我在 android 中为纵向和横向视图创建了布局和布局域。我希望不要刷新我如何从布局切换到 layout-land 的活动。正如我已经放入android:configChanges="keyboardHidden|orientation|screenSize"
防止从布局切换到布局土地的清单。
我想:
- 更改方向时活动不刷新
- 在更改方向时将 XML 从布局切换到布局域,反之亦然
我在 android 中为纵向和横向视图创建了布局和布局域。我希望不要刷新我如何从布局切换到 layout-land 的活动。正如我已经放入android:configChanges="keyboardHidden|orientation|screenSize"
防止从布局切换到布局土地的清单。
我想:
简而言之:你无法做到这一点(只有一些技巧)。看一下Android Activity Lifecycle:android在方向改变时销毁activity。因此,如果不重新实例化活动,您就无法从纵向切换到陆地(然后返回)。
您需要使用onSaveInstanceState()来保存应用程序配置时需要绑定的数据。将发生变化,您可以在onRestoreInstanceState () 方法中重新绑定已保存的数据。这里给出的链接会帮助你。
注意:您需要android:configChanges="keyboardHidden|orientation|screenSize"
从要调用 onConfigurationChanged() 的清单文件中删除
您可以在 onSaveInstanceState() 方法中将数据存储在 Bundle 中,例如
protected void onSaveInstanceState(Bundle icicle) {
super.onSaveInstanceState(icicle);
icicle.putLong("param", value);
}
你可以在
public void onCreate(Bundle icicle) {
if (icicle != null){
value = icicle.getLong("param");
}
}