Android 如果I';我和Galaxy Nexus合作
我在Android 如果I';我和Galaxy Nexus合作,android,Android,我在values和values mdpi文件夹中都定义了dimens.xml。我希望Galaxy Nexus设备(即xhdpi)的值取自values,但实际上它取自values mdpi。为什么会这样?谢谢。检查 您将看到,像素密度限定符并未从Android解析在何处查找资源的方式中删除。您必须为值xhdpi创建一个文件夹 values是默认文件夹,但如果指定带有限定符的文件夹(此处,values mdpi),系统将使用带有限定符的最佳适当文件夹(此处values mdpi) 如果您添加一个va
values
和values mdpi
文件夹中都定义了dimens.xml
。我希望Galaxy Nexus设备(即xhdpi
)的值取自values
,但实际上它取自values mdpi
。为什么会这样?谢谢。检查
您将看到,像素密度限定符并未从Android解析在何处查找资源的方式中删除。您必须为
值xhdpi
创建一个文件夹values
是默认文件夹,但如果指定带有限定符的文件夹(此处,values mdpi
),系统将使用带有限定符的最佳适当文件夹(此处values mdpi
)
如果您添加一个values hdpi
文件夹,它将在xhdpi的屏幕上使用values mdpi
如果您添加一个
values xhdpi
文件夹,它将在xhdpi的屏幕上覆盖前两个文件夹。那么如何指定mdpi
设备的默认值和值?您的默认值与mdpi有何不同?为什么只有mdpi而没有hdpi、xhdpi等。默认情况下,我使用14sp值,mdpi需要8sp值。莫里森昌:我所看到的“屏幕像素密度是一个由于矛盾而没有消除的限定符”场景中唯一的地方是可绘制的。我将不得不测试OP的情况,看看我是否可以复制它,因为这将表明,密度是以同样的方式对待非可抽性和可抽性,这对我来说是新闻。诚然,我通常不认为非绘图内容取决于密度,我严重怀疑根据密度改变字体大小是否是该作品的正确答案。@MorrisonChang:太棒了!Android在密度资源集限定符方面对非可提取项和可提取项做了相同的事情。带有res/values/strings.xml
和res/values xxhdpi/strings.xml
的应用程序,在-xhdpi
设备上运行,从res/values xxhdpi/
而不是默认设置中提取。感谢您触发这一系列的研究!“默认情况下,我使用14sp值,mdpi需要8sp值。仅此而已。”——这毫无意义。你是说一台10英寸的平板电脑的字体大小应该与另一台10英寸的平板电脑不同,仅仅因为屏幕密度不同?请记住,sp
已经考虑了密度(和字体比例)。