我的列表中有一个列表适配器。列表项是通过对具有50dp高度的相对布局的布局进行膨胀来创建的。我想改变相对布局的高度,以便在方向横向上包裹内容,在纵向中它是50 dp。我怎么能实现这个目标?
答案 0 :(得分:1)
在/layout-land
中定义另一个名称相同的布局,并更改layout_height
以换行内容。
答案 1 :(得分:1)
您可以创建两个不同的布局文件,将纵向布局放在res / layout /文件夹中,将横向布局放在res / layout-land文件夹中。
答案 2 :(得分:0)
在横向模式的res
文件夹中创建一个名为layout-land
的文件夹。在该文件夹中,使用height作为wrap-content重写您的xml文件。在布局文件夹的xml中,保持高度为50 dp。
示例:假设您在abc.xml
res\layout
内的相对布局如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="50">"
<!--Other code -->
</RelativeLayout >
在abc.xml
内创建res\layou-land
,如下所示:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content">"
<!--Other code -->
</RelativeLayout >
如果您在横向或纵向中,Android首先在-port或-land目录中查找布局文件,如果找不到,则它将回退到默认布局目录。
您可以阅读有关提供替代资源here的信息。除了陆地和港口之外,还有更多的选择。