3

我的 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 is 18.0

任何人都知道哪个资源文件夹适合新的 nexus 7(1920*1200 分辨率)。

4

2 回答 2

2

实际上,您使用的9sp是平均值(px = sp*(dpi/160)),因此此公式px = 9*(320/160)表示 18。
这就是您获得值 18 的原因。
代替9sp11sp保留它9px,您的问题将暂时解决。
关于文件夹问题:使用large-xhdpior sw600dp-xhdpi

于 2013-11-18T07:31:39.540 回答
1

tvdpi 是 nexus 7 的正确文件夹

于 2013-11-18T06:54:04.727 回答