我正在使用Google的iosched2011应用进行测试,并使用4.0.3模拟器进行测试。
我想知道为什么layout-large-v11资源不适用于Android 4.0 WVGA800手机。看起来800 * 480被视为一个大屏幕,并且android 4.0的API级别大于11.因此它应该在该手机中应用该文件夹上的资源,但事实并非如此。
答案 0 :(得分:3)
在您的应用中检查Android如何设置配置:
活动onCreate添加:
Configuration cfg = getApplication().getResources().getConfiguration();
int sz = cfg.screenLayout&cfg.SCREENLAYOUT_SIZE_MASK;
System.out.println("size: "+sz);
在logcat中,你会看到these中的一个号码。
在拥有4,65'屏幕的三星Galaxy Nexus上,我得到2 = SCREENLAYOUT_SIZE_NORMAL。所以你可以期待同样的。
来自文档:
一组四个通用尺寸:小,正常,大和xlarge
注意:从Android 3.2(API级别13)开始,这些大小的组是 不推荐使用基于管理屏幕尺寸的新技术 在可用的屏幕宽度上。如果你正在为Android 3.2开发 更多,请参阅Declaring Tablet Layouts for Android 3.2了解更多信息 信息。
答案 1 :(得分:0)
mice说的是什么。您的屏幕尺寸类别应始终主要取决于其物理尺寸,而不是像素数。
此外,从逻辑上讲,相同大小等级的所有屏幕应该在dp(与密度无关的像素)中大致相同的大小。
有关详细信息,请参阅:http://developer.android.com/guide/practices/screens_support.html#range
所以不,你的手机不应该是大的,不管它有多少像素。如果它足够大,那么你会看起来非常愚蠢地把它拿到头上。