screenOrientation="portrait"
时,它看起来像:
screenOrientation="landscape"
时,它看起来像:
您只能看到中心视图已旋转,其他视图未更改。
是否有可能在android中,如果是的话如何实现呢?
答案 0 :(得分:1)
请参阅:http://developer.android.com/guide/practices/screens_support.html
关于方向的部分
例如:
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
res/layout-xlarge-port/my_layout.xml // layout for extra large in portrait orientation
或者在代码中。填写自己更改布局的代码。
的活动:
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
}
}
清单:
<activity android:name=".MyActivity"
android:configChanges="orientation"/>
答案 1 :(得分:0)
由于您的要求是在不同的布局中以正确的方向查看图像,我建议您旋转图像而不是提供替代资源,这意味着您必须旋转所有内容(我的意思是按钮内的文字必须是旋转。其他组件也一样。)
您可以检测方向变化,只需单独旋转图像视图就可以省去一些工作。
您可以通过在活动清单中指定方向更改来控制方向更改,如下所示。
<activity android:name=".MyActivity"
android:configChanges="orientation|screenSize"/>
然后您可以按照klaasvaak的建议覆盖onConfigurationChanged(Configuration newConfig)方法,只需旋转图像即可。您可以按照link查看如何旋转图像。