5

我有一个 MonoDroid 应用程序,我想强制我的所有活动仅以纵向显示。

我想创建一个 Activity 基类,例如:

[Activity (ScreenOrientation = ScreenOrientation.Portrait)]         
public abstract class BaseActivity : Activity
{
}

然后我的应用程序中的所有其他活动都应该从它继承(也避免重复并有一个中心位置来定义ScreenOrientation = ScreenOrientation.Portrait)。

但是,如果您查看ActivityAttribute定义,似乎它不支持继承。

[Serializable]
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
public sealed class ActivityAttribute : Attribute { ... }
  1. 我必须Activity (ScreenOrientation = ScreenOrientation.Portrait)在我的应用程序的所有活动中放入吗?
  2. 在 Android 世界中只支持纵向方向是不是一个坏主意?(我有一个仅支持纵向的 iOS 应用程序,它运行得非常好,并且不需要在横向上运行)。
4

1 回答 1

5

您需要将属性放在每个活动上。如果您正在创建一个原生 Android 应用程序,您需要用 标记清单中的每个 Activity android:screenOrientation="portrait",使用此属性向 Mono For Android 发出信号以执行相同的操作。

不幸的是,属性并没有像您注意到的那样继承。

于 2013-04-11T19:46:21.400 回答