如何在景观中保持相同的状态。 当我以横向模式旋转屏幕时,然后重新启动活动 我的布局视图显示错误。所以请帮助我。
答案 0 :(得分:1)
您可以使用Bundle
onSaveInstanceState()
方法将状态保存在onCreate()
或onRestoreInstanceState()
中。
或者如果您要禁用方向更改,可以将android:screenOrientation="landscape"
添加到清单文件中的Activity
。
答案 1 :(得分:0)
要在横向模式下保留相同的状态,您必须在当前活动中添加android:configChanges="orientation|keyboard"
以处理正在进行的配置更改:
<activity
android:configChanges="orientation|keyboard"
...
/>
或更改布局或configChanges
上的任何视图,您必须覆盖活动的onConfigurationChanged
:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
//Handle config changes here, paying attention to
//the newConfig.orientation value
super.onConfigurationChanged(newConfig);
}
如果你想在Configuration Chnages的任何视图上保存状态,那么你必须覆盖onSaveInstanceState()
以保存视图状态,如TextView,EditText,View Layout's ..和onRestoreInstanceState()
for Retrieving after after after设备模式旋转。
有关我们如何处理运行时更改的更多信息,您还可以看到这个android主题:
答案 2 :(得分:0)
如果您说您的布局在横向模式下看起来不合适,那么您将需要一个具有相同名称的新xml。将它放在名为&#34; layout-land&#34;的新文件夹中。那应该有帮助