屏幕方向适用于平板电脑和设备

时间:2011-09-30 04:51:31

标签: android

我对平板电脑和设备都使用相同的代码,这是我的问题,虽然在两个方向来到移动它应该加载列表视图,在纵向平板电脑它需要加载listview然后来景观它应加载gridview?

由于

我使用过此代码,任何人都可以帮助我PLZ ..

 Configuration config = getResources().getConfiguration();
                    if((config.screenLayout & Configuration.ORIENTATION_LANDSCAPE) ==  
                        Configuration.SCREENLAYOUT_SIZE_XLARGE)); 
                    {
                        this.gridView();    
                    }else{
                        this.listview();
                    }

1 个答案:

答案 0 :(得分:2)

如果您正在为布局使用xml,那么您需要做的就是创建不同的xml文件,并将它们放在布局文件夹中,并使用适当的配置限定符。有关详细信息,请参阅此article

对于您,您将使用以下文件夹:

res/layout/my_layout.xml             // layout for normal screen size ("default"). Listview here
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation. Gallery here

请记住,如果这些文件夹不存在,则需要创建这些文件夹。

在你的代码中,如果你调用setContentView(R.id.my_layout),android将使用适当的布局。然后,您可以执行findViewById()调用,它应该为未使用的布局视图返回null。您可以在ListView和GridView上执行findViewById()。根据哪个视图返回null,您可以适当地设置成员(this.gridView或this.listView)。