所有屏幕的Android文字大小?

时间:2014-02-26 06:16:35

标签: android android-layout textview

我需要多个屏幕的文字大小(例如大屏幕,小屏幕,普通屏幕,x大屏幕等),我也已经搜索过Google,但是无法正确解决问题。任何人都可以帮助我。

6 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

在android上使用sp作为字体大小的单位。这将确保字体在所有不同的屏幕尺寸或分辨率上显示大致相同的大小。

使用sp还可以确保它尊重用户对屏幕字体大小的偏好。

你会找到大量的答案,为什么你应该使用sp阅读thisthis

答案 2 :(得分:1)

在值文件夹中创建维度,例如值,值 - 大,值 - xlarge,..并通过声明18sp,20sp,24sp,...来更改大小。您必须使用SP(缩放像素)

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

Source

答案 3 :(得分:0)

您需要分别为不同的屏幕密度创建布局文件。这就是谷歌建议的方式。

答案 4 :(得分:0)

1)而是使用px使用sp作为文本大小,例如android:TextSize:20sp Sp =缩放像素,它将根据设备尺寸

缩放文本的像素

2)您可以使用style.xml,可以为不同的分辨率和版本

定义它

答案 5 :(得分:0)

你不应该使用

android:textSize in 30sp,30dp numeric formats

从以下

中选择自己

第一种方法:

相反,让Android OS分析您的屏幕大小并使用以下内容:

android:textAppearance="?android:attr/textAppearanceMedium"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textAppearance="?android:attr/textAppearanceSmall"

第二种方法:

为不同的屏幕尺寸定义不同的布局

res/layout/my_layout.xml             // layout for normal screen size ("default")
res/layout-small/my_layout.xml       // layout for small screen size with small text
res/layout-large/my_layout.xml       // layout for large screen size with larger text
res/layout-xlarge/my_layout.xml      // layout for extra large screen size with even larger text
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation

布局样本为:

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