Android Fragments 不同屏幕方向的不同列表视图布局

c86crjj0  于 2024-01-08  发布在  Android
关注(0)|答案(3)|浏览(178)

我有一个视图,我想在上面放置两个ListView,它们的位置取决于屏幕方向。它看起来像这样:

横屏方向:

  1. ___________ ___________
  2. | | |
  3. | ListView1 | ListView2 |
  4. |___________|___________|

字符串

垂直屏幕方向:

  1. ___________
  2. | |
  3. | ListView1 |
  4. |___________|
  5. | |
  6. | ListView2 |
  7. |___________|


从我所读到的内容来看,我需要为每个ListView使用一个片段--可以用其他方式来完成吗(即,只使用两个不同的XML布局文件,但逻辑相同)?

vatpfxk5

vatpfxk51#

你可以采取以下方法。
只需创建一个名为layout-landlayout-port的目录。将布局文件与相同的名称。确保您在布局中使用相同的id。

  1. layout-land
  2. - myactivity.xml
  3. layout-port
  4. - myactivity.xml

字符串
Android将自动按照方向进行布局。
参考:Multiple Screen Support .读取其中使用配置限定符..

axr492tv

axr492tv2#

把两个布局XML文件分别放在layout-land和layout文件夹中怎么样?
简单的出路!

jgzswidk

jgzswidk3#

您可以在第一个Activity中检查设备方向,然后更改主线性布局的方向垂直或方向。当您更改父布局的方向时,不要忘记更改listviews父布局的布局参数,因为如果您使用权重,它可能会抛出错误。但如果您不使用此类属性,它应该可以正常工作。

相关问题