Android 旋转装置赢得';t装载陆地或港口布局
我有一个类Android 旋转装置赢得';t装载陆地或港口布局,android,xml,android-layout,rotation,listactivity,Android,Xml,Android Layout,Rotation,Listactivity,我有一个类MyClass,它扩展了ListActivity。 根据设备方向,列表中的每一行使用2种不同的xml: layout-land/row_layout.xml layout-port/row_layout.xml 我希望如果设备是垂直的,列表将在文件夹布局端口中显示xml布局,如果设备是水平的,列表将在文件夹布局端口中显示xml布局 但这并没有发生。我的活动将始终显示布局端口/row_layout.xml,然后我将设备从垂直方向旋转到水平方向 我应该使用旋转设备上触发的特定方法吗?此刻
MyClass
,它扩展了ListActivity
。
根据设备方向,列表中的每一行使用2种不同的xml:
layout-land/row_layout.xml
layout-port/row_layout.xml
我希望如果设备是垂直的,列表将在文件夹布局端口中显示xml布局,如果设备是水平的,列表将在文件夹布局端口中显示xml布局
但这并没有发生。我的活动将始终显示布局端口/row_layout.xml
,然后我将设备从垂直方向旋转到水平方向
我应该使用旋转设备上触发的特定方法吗?此刻我可以想到一件事。您是否在该活动的清单中使用android:configChanges=“screenSize | orientation”以避免重新创建列表/适配器?
布局端口应简称为layout
afaik。事实上,此堆栈中有一些有用的提示是的,我使用:android:configChanges=“orientation | keyboardHidden | screenSize”如果您删除它,那么您的活动将使用正确的端口/接地布局重新创建,但您必须设法保存显示的数据,并在配置更改完成后重新加载。哦,我的天哪。所有这些工作(您是否有一个示例或链接?是否有可能在xml中告诉您:“如果纵向,则宽度=50sp,如果横向,则宽度=100sp”?只是为了避免通过代码进行所有管理!没有,但您可以从代码、检查设备方向等方面进行区分,但这是正确操作的最佳和最干净的方法。也许此链接有帮助。)