gpt4 book ai didi

android - layout-land 文件不起作用

转载 作者:行者123 更新时间:2023-11-30 03:53:01 25 4
gpt4 key购买 nike

我遇到了以下问题。我的程序是一个秒表。我有 res/layout/main.xmlres/layout-land/main.xml 但它是错误的。当我转动手机时,程序停止。我认为它会再次调用 onCreate。我在 list 中添加了以下行

android:configChanges="keyboardHidden|orientation"

但是在这个布局 Activity 没有加载之后。

我试过下一个例子,但它不起作用

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
int ot = getResources().getConfiguration().orientation;
switch (ot) {
case Configuration.ORIENTATION_LANDSCAPE:
setContentView(R.layout.main_land);
break;
case Configuration.ORIENTATION_PORTRAIT:
setContentView(R.layout.main);
break;
}
Toast.makeText(this, "Helloo", Toast.LENGTH_SHORT).show();
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
// TODO Auto-generated method stub
super.onConfigurationChanged(newConfig);

int ot = getResources().getConfiguration().orientation;
switch (ot) {
case Configuration.ORIENTATION_LANDSCAPE:
setContentView(R.layout.main_land);
break;
case Configuration.ORIENTATION_PORTRAIT:
setContentView(R.layout.main);
break;
}
}

@Override
public Object onRetainNonConfigurationInstance() {
// TODO Auto-generated method stub
return super.onRetainNonConfigurationInstance();
}

最佳答案

当您在 AndroidManifest.xml 中包含以下命令时,即 android:configChanges="orientation",您将手动禁用默认的布局更改行为,这就是以新的方向重新开始您的 Activity 。

非常有用的一点是,当您在 onConfigurationChanged 中获得 CONFIGURATION_LANDSCAPE/CONFIGURATION_PORTRAIT 时,您需要手动更改使用的布局。

请注意,根据来自 Android 开发者网站的 Activity 文档,onConfigurationChanged 是“最后的手段”选项 - 通常最好保留状态并让系统重新启动您的应用。

引用链接如下:- Link for handling Configuration .我希望这对你有用。

关于android - layout-land 文件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13842925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com