我的 android 应用程序在旧的 nexus 7 上运行良好。但是我在新的 nexus 7 设备上遇到了一个问题。 所有的动态渲染(图像大小和文本大小)都破坏了设计
tv1.setTextSize(getResources().getDimension(R.dimen.legend_text));
这里我提到了 4 个文件夹,命名为:-
values-large-hdpi
values-large-xhdpi
values-xlarge-hdpi
values-xlarge-mdpi
在上述所有文件夹中,dimen.legend_text 的值为 11sp。但是当我找出 getResources().getDimension(R.dimen.legend_text)
的值时,它给了我 18.
这是我的日志:-
11-18 12:09:29.758: D/size of text foe nexus 7(4794): size of text foe nexus 7 是 18.0
任何人都知道哪个资源文件夹适合新的 nexus 7(1920*1200 分辨率)。
最佳答案
实际上你使用的是 9sp
意味着 (px = sp*(dpi/160))
所以这个公式 px = 9*(320/160 )
表示 18.
这就是您获得值 18 的原因。
代替 9sp
或 11sp
保留它 9px
并且您的问题将暂时解决。
关于文件夹问题:使用large-xhdpi
或sw600dp-xhdpi
。
关于android - Nexus 7 新版本解决资源文件夹问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20041475/