我正在开发一个针对 android 4+ 的应用程序,它的行为因屏幕大小而异。更详细:
- 在小/中型屏幕上,方向被强制为纵向,应用程序通过切换活动来运行。
- 在大/超大屏幕上,横向是强制的,屏幕被分成两部分,菜单片段在左边,其他片段在右边。
问题是,我无法创建被检测为大屏幕的 AVD。
刚刚在分辨率为 640x1024、密度为 240 的 AVD 上进行了测试,此代码从未进入第一个 IF。
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // forcing layout to landscape if display is LARGE or more
    if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE ||
            (getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_XLARGE) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        dualPane = true;
    }
    else {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        dualPane = false;
    }
}
有什么帮助吗?