我正在开发一个针对 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;
}
}
有什么帮助吗?