2011-08-22 115 views
2

3.2通过在res文件夹中使用layout-swXXXdp引入了一种创建布局的好方法。 问题是它控制dp中SmallestWidth使用的布局。这很好,但如果您的平板电脑的容量是1024x600,而平板电脑的容量是1024x768,则会出现问题。我的应用只是风景。这是一个包含一定数量的项目的gridview。问题是我需要gridview根据高度分辨率来调整一行中有多少项。所有1024像素的屏幕在GridView行中应该有5个项目,而所有1280像素的平板应该在GridView行中有6个项目。它不应该基于宽度,因为然后gridview有点挤压。我怎样才能做到这一点? (立足于高度我布局的choise,不宽)3.2+上的控制平板电脑/手机布局

回答

0

请试试这个

获取显示

Display display = ((WindowManager)getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); 
int width = display.getWidth(); 
int height = display.getHeight(); 

的高度和宽度的GridView的声明后,检查高度,并相应设置列数

例如

GridView gridView = (GridView)findViewById(R.id.app_gridview); 
if(height <= 1024){ 
    gridView.setNumColumns(5); 
}else { 
    gridView.setNumColumns(6); 
} 

我觉得这将解决问题

+0

对不起,这个答案不早点!感谢您的帮助=) – blkhp19

+0

欢迎:) – silwar