屏幕大小和内容相关的布局

时间:2016-07-23 20:28:51

标签: android android-layout

我会为每个屏幕尺寸(列表视图中的不同行)扩展不同的布局,但对于正常尺寸,我必须使用两个行布局。目前我正在检查屏幕尺寸,如果尺寸正常,那么我再次检查哪一行膨胀。有没有更好的方法呢?

例如:

+---------+
|  TITLE  |
+---------+    
|  IMAGE  |
+---------+
| CONTENT |
+---------+

正常1

+---------+
|  TITLE  |
+---------+    
|  IMAGE  |
+---------+
| CONTENT |
+---------+

或正常2

+---------+--------+
|  TITLE  |  IMAGE |
+---------+--------+
| CONTENT |
+---------+

1 个答案:

答案 0 :(得分:1)

您可以使用不同的布局文件版本。例如,您的默认布局是:

+---------+
|  TITLE  |
+---------+    
|  IMAGE  |
+---------+
| CONTENT |
+---------+

您将把它保存在res / layout / my_layout.xml中。

然后你想要另一个宽度大于400dp的屏幕布局:

+---------+--------+
|  TITLE  |  IMAGE |
+---------+--------+
| CONTENT |
+---------+

你必须将它保存在res / layout-w400dp / my_layout.xml。

文件名必须相同,“w”表示宽度(高度可以使用“h”)。

在Java代码中,只要在不同的布局中对相同的视图使用相同的id(例如R.id.title,R.id.image和R.id),就不必更改任何内容。含量)。