Android:Activity中的屏幕旋转不会切换纵向/横向布局

Pas*_*ein 5 android landscape portrait screen-orientation device-orientation

我构建了Android应用程序,现在想添加不同方向的布局。我创建了一个布局区域文件夹,并为我的第一个入门活动“ myStartActivity”(与之前在两个方向上使用的布局名称相同)放置了一个不同的布局。

根据我的屏幕方向,在我启动该应用之前,应选择正确的布局:当我纵向启动时,从“布局”文件夹中选择“ myLayout.xml”,而从“布局-土地”中选择“ myLayout.xml”-我在风景中开始时的文件夹。

问题是,当我已经在活动中时旋转设备时,旋转后我没有得到新的布局。例如:从纵向旋转到横向,静止图像从“布局”文件夹而不是“布局土地”文件夹显示“ myLayout.xml”。

我没有覆盖任何OnConfigurationChange方法或任何东西。我在“ myStartActivity”中所做的只是实例化一些按钮,并为它们提供了一些侦听器。我想在横向中使用其他布局来更改按钮的顺序。

tut*_*tts 0

你可以做的是使用Activity.getResources().getConfiguration().orientation

然后根据方向结果,在 oncreate() 方法中设置内容视图,该方法在旋转时调用。

protected void onCreate(Bundle savedInstanceState) {
int result = this.getResources().getConfiguration().orientation;
if (result == 1){
//set content view to portrait
setContentView(R.layout.portrait);
}
else{
//set content view to landscape} 
setContentView(R.layout.landscape);
}
Run Code Online (Sandbox Code Playgroud)

或者坚持案例陈述:)