如果Android设备的屏幕大小被视为小(320dp x 426dp单位),我需要禁用应用程序中的某个按钮。我目前正在使用:在Android中检测屏幕大小
if (activity.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_SMALL) {
//Is small size
} else {
//Is not small size
}
,以确定设备的屏幕尺寸,但是这似乎从来没有进入Configuration.SCREENLAYOUT_SIZE_SMALL
条件。我做了打印输出,发现这个值实际上相当于Configuration.SCREENLAYOUT_SIZE_NORMAL
!
Alex Lockwood在这里的答案是:How do I get the ScreenSize programmatically in android是我对这个解决方案的参考,但是正如J R P在他的回答中指出的那样,一切似乎都等同于我的Configuration.SCREENLAYOUT_SIZE_NORMAL
。
如何可靠地定义设备的屏幕尺寸?我目前正在三星Galaxy S3上进行测试,并且无论如何这应该是一个“小”设备。
由于提前, 川
而不是做以上,你为什么不创建LDPI和MDPI不同的布局?在ldpi中,您不会包含按钮,并且在代码中您将检查该按钮是否存在于布局中。 – gunar
有一个(在您的代码中缺少 – njzk2
因为它不是屏幕像素密度我看着更多的屏幕尺寸... – Wakka02