我试图强制我的应用程序的“肖像”模式,因为我的应用程序绝对不是为“风景”模式设计的。
阅读一些论坛后,我在我的清单文件中添加了这些行:
<application
android:debuggable="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:screenOrientation="portrait">
但它在我的设备 (HTC Desire) 上不起作用。它从“纵向”lo“横向”切换,忽略来自清单文件的行。
更多的论坛阅读后,我试图在我的清单文件添加此:
<application
android:debuggable="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:configChanges="orientation"
android:screenOrientation="portrait">
和这个功能在我的活动课:
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
但是,再一次,没有运气。
不要将方向应用于application元素,而是应该将属性应用于activity元素,并且还必须设置configChanges
,如下所述。
例子:
<activity
android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden">
</activity>
这在清单文件AndroidManifest.xml
中应用。

请注意,
android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden"
添加到清单文件中-其中定义了活动。

如果你有很多像我这样的活动,在你的应用程序或者如果你不想在清单中输入每个活动标签的代码,你可以这样做。
在你的应用程序基类,你会得到一个生命周期回调
所以基本上发生了什么在为每个活动时创建在创建应用程序类得到触发这里是 code..
public cl MyApplication extends Application{
@Override
public void onCreate() {
super.onCreate();
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(Activity activity, Bundle bundle) {
activity.setRequestedOrientation(
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
// for each activity this function is called and so it is set to portrait mode
}
@Override
public void onActivityStarted(Activity activity) {
}
@Override
public void onActivityResumed(Activity activity) {
}
@Override
public void onActivityPaused(Activity activity) {
}
@Override
public void onActivityStopped(Activity activity) {
}
@Override
public void onActivitySaveInstanceState(Activity activity, Bundle bundle) {
}
@Override
public void onActivityDestroyed(Activity activity) {
}
});
}
我希望这有助于。

我认为android:screenOrientation="portrait"
可以用于单个活动。因此,在<activity>
标签中使用该属性:
<activity android:name=".<Activity Name>"
android:label="@string/app_name"
android:screenOrientation="portrait">
...
</activity>
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(73条)