我为不同的布局创建了四个文件夹,以使我的应用程序支持所有屏幕。我创建了四个文件夹,即layout(默认)、layout-large、layout-small、layout-xlarge。在所有这些中,我放置了一个具有相同名称“activity_start.xml”的 xml 文件。现在,我想在我的 startActivity.java 中使用以下代码以编程方式设置布局:
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
switch(displayMetrics.densityDpi)
{
case DisplayMetrics.DENSITY_LOW:
// layout for small sized devices.
break;
case DisplayMetrics.DENSITY_MEDIUM:
// layout for medium-sized devices.
setContentView(R.layout.activity_start);
break;
case DisplayMetrics.DENSITY_HIGH:
// layout for big-sized devices.
setContentView(R.layout-large.activity_start);//<----------- syntax error in this line
break;
}
现在在DisplayMetrics.DENSITY_MEDIUM的情况下,代码是正确的(我猜),但是当我为DisplayMetrics.DENSITY_HIGH执行 setContentView 时,它不会占用我创建的文件夹(布局大)。
我的意思是,当我们为 setContentView 输入参数时,输入 R.lay...(按 ctrl+space),它不会显示文件夹“layout-large”。
我想以编程方式设置布局。如果有人可以帮助我,请。