2016-01-21 38 views
1

如何根據分辨率密度更改textSize?使用XML的不同分辨率密度的文本大小

我發現了幾種方法,但他們都用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

http://stackoverflow.com/questions/16706076/drawable-folder-for-different-resolution-and-application-icon-size –

+2

[文字大小的可能的複製與不同的分辨率](http://stackoverflow.com/questions/12620343/text-size-with-different-resolution) –

回答

0

使用textSize in sp unit in xml。它將適應所有決議。

希望這會有所幫助。

UPDATE 請同時參考Text size with different resolution,其中提出了不同分辨率的一些比例因子。

+0

是的,這是我一直在做 – JayVDiyk

+0

這應該足以滿足您的需求。你還需要什麼? –

+0

這不符合您的需求嗎? –

0

您可以在分辨率特定值文件夾的dimens.xml中的<dimen>標記聲明尺寸。

<dimen name="my_text_view_size">12sp</dimen> 

你可以有不同的分辨率多值文件,並可以爲每個分辨率相同的恆定分配不同的值。然後將該常量分配給文本大小。

檢查此瞭解更多詳情 https://stackoverflow.com/a/16910589/3329488

相關問題