我们如何根据分辨率密度更改textSize?
我在SO上找到了几种方法,但是所有这些方法都使用java代码来实现。
但我需要一个java免费方法,因为我有一些地方可以在XML上设置textSize,而在Java代码上设置一些。
在xml中,我这样做
android:textSize="@dimen/FONT_SIZE_SMALL"
但有时我需要通过java代码设置它。
textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, getResources().getDimension(R.dimen.FONT_SIZE_SMALL);
有什么想法吗?它可行吗?
答案 0 :(得分:0)
在xml中的textSize
单元中使用sp
。它将适应所有分辨率。
希望这有帮助。
<强>更新强> 另请参阅Text size with different resolution,其中提出了针对不同分辨率的一些缩放因子。
答案 1 :(得分:0)
您可以使用dimens.xml中的<dimen>
标记在特定于分辨率的值文件夹中声明尺寸
例如
<dimen name="my_text_view_size">12sp</dimen>
您可以为不同的分辨率设置多个值文件,并为每个分辨率为同一个常量指定不同的值。然后将常量分配给文本化。
查看此内容以获取更多详细信息 https://stackoverflow.com/a/16910589/3329488