-1
我正在编写一个应用程序,主要用于手机,但有些用户会在平板电脑上使用。对于平板电脑用户,我想配置一些附加功能。我在手机上测试它(的Galaxy S手机 - 480×800)和平板电脑(Galaxy Tab的10.1" - 800×1280)。。。。。使用下面的代码制作平板电脑的特定行为。是SCREENLAYOUT_SIZE还是我?
if ((getResources().getConfiguration().screenLayout &
Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) {
Toast.makeText(this, "Tablet",Toast.LENGTH_LONG).show();
}
else if ((getResources().getConfiguration().screenLayout &
Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_NORMAL) {
Toast.makeText(this, "Phone" , Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(this, "Neither" , Toast.LENGTH_LONG).show();
}
手机谈到为“手机”和平板出来作为“不”。但是the Android documentation说SCREENLAYOUT_SIZE_LARGE是“在至少约480×640 dp单位。”
BTW,getResources()。getConfiguration()上平板电脑说screenWidthDp是1280和screenHeightDp是752.那么我做错了,平板电脑没有被检测到?
在此先感谢。
我收到XLARGE的编译错误 - 它何时被引入? – user316117 2012-03-23 16:30:41
我觉得蜂窝。您可以使用常数代替:4(0x00000004) – Renard 2012-03-23 16:43:47
优秀(0x00000004)的作品!谢谢。 – user316117 2012-03-23 16:55:00