我有一个观点,我希望根据屏幕方向放置两个ListView
个彼此相邻的位置。它看起来像那样:
水平屏幕方向:
___________ ___________
| | |
| ListView1 | ListView2 |
|___________|___________|
垂直屏幕方向:
___________
| |
| ListView1 |
|___________|
| |
| ListView2 |
|___________|
根据我的阅读,我需要为每个ListView
使用一个片段 - 是否可以通过其他方式完成(即只使用两个不同的XML布局文件,但逻辑相同)?
答案 0 :(得分:1)
您只需根据方向和分辨率将其放在具有不同名称的单独文件夹下,设备将自动选择正确的屏幕设置。
您可以采用以下方法。
只需创建一个名为layout-land
和layout-port
的目录。放置具有相同名称的布局文件。确保在布局中使用相同的ID。
layout-land
- myactivity.xml
layout-port
- myactivity.xml
Android会根据方向自动进行布局。
参考:Multiple Screen Support。阅读使用配置限定符 ..
答案 1 :(得分:0)
如何将两个布局XML放置在layout-land和layout文件夹中。 对于-land,水平放置列表视图,垂直放置其他列表视图。
轻松出路!
答案 2 :(得分:0)
您可以在第一个活动中检查设备方向,然后更改主线性布局的垂直方向或方向。在更改父布局的方向时,不要忘记更改listviews父布局的布局参数,因为如果使用权重,则可能会抛出错误。但是如果你没有使用这样的属性,它应该可以正常工作。