如何在旧Android上加载特定的分辨率布局

时间:2011-12-21 11:12:58

标签: android android-layout

我正在为android编写一个程序。我读到layout-swNdp表示法只能在SDK 13级别使用..但我希望应用程序适应屏幕540x960也适用于较旧的Android版本..如2.0 2.2 可以在不使用layout-swNdp文件夹的情况下执行此操作吗?

1 个答案:

答案 0 :(得分:2)

如果您想以编程方式执行此操作,可以使用Display对象获取高度和宽度:

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

使用以下命令获取当前API级别:

int currentapiVersion = android.os.Build.VERSION.SDK_INT;

然后,您可以通过在if条件下调用setContentView()来为这些设备使用特定的布局:

if ((currentapiVersion <= android.os.Build.VERSION_CODES.FROYO) && (height == 960) &&(width == 540)) {
    setContentView(R.layout.your_special_layout);
} else {
    setContentView(R.layout.your_main_layout);
}

希望有所帮助!