簡體   English   中英

TextSize是否適用於具有不同大小的不同設備?

[英]TextSize for different device with different size?

如何在屏幕大小不同的不同設備上支持文本大小? 我嘗試為不同的屏幕提供不同維度的xml,但無法有效運行。

值值-大值-較小值-sw600dp值-sw720dp值-sw800dp

試試這個庫,可能對您有幫助。 CommonTextSize

在您的布局中像這樣添加提及尺寸android:textSize="@dimen/_15sdp"

當您具有值值-大值-小值-sw600dp值-sw720dp值-sw800dp等文件夾時,您的方法是准確的。 但是我認為您缺少更改values/dimens.xml values-large/dimens.xml values-small/dimens.xml values-sw600dp/dimens.xml values-sw720dp/dimens.xml values-sw800dp/dimens.xml

例如,您在values / dimens.xml中使用了如dimens.xml下面的內容

<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="text_size">18sp</dimen>
</resources>  

在其他值文件夾中,您需要更改文本大小的值,也請對文本大小使用sp而不是px或dp。

請注意,在蜂窩之后描述了values values-large values-small values- values values-large values-small -small。

您也可以按照其他答案中的建議使用該庫。但是,如果您不想使用額外的庫,請嘗試此方法。

以編程方式

這是一種根據屏幕尺寸將dp的尺寸轉換為尺寸的方法。

public float convertFromDp(int input) {
final float scale = getResources().getDisplayMetrics().density;
return ((input - 0.5f) / scale);
} 

現在,只需以編程方式將值賦予textsize即可。

tvTextView1.setTextSize(convertFromDp(24));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM