我一直在尝试设置我的活动,以便即使更改设备方向,内容视图也不会更改。问题是,无论何时我改变方向(无论是从纵向到横向还是从横向到纵向),都会刷新布局,并重新加载。 我想阻止我的刷新布局。我怎样才能完成这项任务?
这是onConfigurationChanged方法:
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE){
Log.d(Global.TAG, "LANDSCAPE");
}
if(newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
Log.d(Global.TAG, "PORTRAIT");
}
}
以下是我活动的清单:
<activity
android:name="com.inturnex.safecam.MainActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
答案 0 :(得分:1)
如果您将LinearLayout
配置为位于屏幕底部,则会移至底部,因为这与Android所知的位置相同。如果您希望屏幕旋转后LinearLayout
不在屏幕底部,则可以定义横向和纵向xml,Android将根据运行时的方向自动使用相应的颜色。 / p>
Here is the relevant developer guide关于如何告诉Android使用哪种布局。