我的应用程序应该使用以下逻辑决定是在双窗格还是单窗格中显示:
- 对于所有屏幕尺寸,如果在单窗格中纵向显示
- 对于 SMALL 和 NORMAL 屏幕尺寸,如果在 SINGLE-PANE 中横向显示
- 对于 LARGE 和 XLARGE 屏幕尺寸,如果在双窗格中横向显示
我正在为 Android 2.3.3 SDK 开发,所以 Android 3.0 SDK 的好功能在这里不适用。我在下面开发的函数总是为所有屏幕尺寸和方向组合返回 SINGLE-PANE。这里可能出了什么问题?
/**
* Determine if a dual pane is appropriate.
*
* @param null
* @return boolean
*/
public boolean isDualPane() {
boolean dualPane = false;
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) {
dualPane = true;
}
}
Log.d("ORIANTATION", (dualPane) ? "DUAL PANE" : "SINGLE PANE");
return dualPane;
}