2016-07-23 53 views
0

我会膨胀不同的布局每个屏幕大小(列表视图中的不同行),但对于正常大小,我不得不使用两个行布局。目前我正在检查屏幕大小,如果大小正常,我再次检查哪一行充气。有没有更好的方法来做到这一点?屏幕大小和内容相关的布局

例如:

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

正常1

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

或正常的2

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

回答

1

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

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

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

然后你想另一个布局屏幕比400dp宽:

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

你必须将它保存在RES /布局w400dp/my_layout.xml。

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

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

相关问题