Android:更改方向时更改列表视图项目布局?

时间:2016-10-17 16:34:06

标签: java android orientation

如果我以横向模式启动应用程序,那么它将使用横向列表项xml。但如果我以纵向模式启动它并将其旋转到横向模式,它将使用纵向列表项xml进行两种配置。我使用onConfigurationChanged来检测方向更改,但我不确定如何告诉它使用正确的xml文件。我有两个同名的xml文件,但其中一个用于横向。谢谢。

1 个答案:

答案 0 :(得分:0)

如果你想要达到这个目的,你应该有 2个文件夹用于布局,应该叫做

layout-land/*

其他

layout-port/*

将布局命名为相同

 File.xml 

不仅仅是给他们充气,操作系统还可以休息。

另见 fill the form here

  

在。中指定android:configChanges =“orientation”   AndroidManifest.xml中。在那种情况下再次指定setContentView()   onConfigurationChanged()或删除AndroidManifest.xml   指令

如果你想继续使用onconfigurationchanged()而不是恰当地膨胀。

@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);

// Checks the orientation of the screen
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
    Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
    Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
}
}