我正在为不同的屏幕尺寸使用不同的布局,但对某些onClick使用相同的方法 并且根据屏幕大小,我使用了不同的drawable,应该为调用onClick的视图设置。
尝试了getTag,但我没有设置它们,因为我不知道要设置什么标签(它们基于屏幕尺寸(物理))。
那么我如何才能获得当前应用程序使用布局大或布局正常的布局?
答案 0 :(得分:1)
您可以使用Configuration.screenLayout位掩码。
示例:
if ((getResources().getConfiguration().screenLayout &
Configuration.SCREENLAYOUT_SIZE_MASK) ==
Configuration.SCREENLAYOUT_SIZE_LARGE) {
// on a large screen device ...
}
取自“Jeff Gilfelt”, 重复:How to determine device screen size category (small, normal, large, xlarge) using code?
答案 1 :(得分:0)
你到底想要做什么?听起来你需要不同的图像用于同一个按钮,具体取决于布局,已经支持,而无需明确知道你所在的屏幕尺寸。您应该能够使用drawable-xhdpi,drawable-sw600dp-xhdpi和drawable-sw800dp-xhdpi等限定符。如果将按钮图像放在每个具有相同名称的图像中,请给出可绘制的按钮,系统将在运行时选择正确的drawable,而无需明确知道大小。
如果你的onClick中有一些需要知道屏幕大小的逻辑,那就是一个不同的问题,如果你提供更多关于你想要做什么的细节,那么框架可能会有类似的方式支持它。