首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >TextView在安卓应用中的字体大小会随着字体大小的改变而改变

TextView在安卓应用中的字体大小会随着字体大小的改变而改变
EN

Stack Overflow用户
提问于 2012-11-07 15:09:17
回答 12查看 588.2K关注 0票数 192

我想在我的应用程序中指定我自己的文本大小,但我在执行此操作时遇到了问题。

当我在设备设置中更改字体大小时,我的应用程序TextView的字体大小也会发生变化。

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2012-11-07 15:22:23

实际上,设置字体大小只影响sp中的大小。所以你需要做的就是-在dp中定义textSize而不是sp,这样设置就不会改变你应用程序中的文本大小。

以下是文档的链接:Dimensions

然而,请注意,预期的行为是所有应用程序中的字体都尊重用户的首选项。用户可能想要调整字体大小的原因有很多,其中一些甚至可能是医学视障用户。在文本中使用dp而不是sp可能会导致不情愿地歧视应用程序的某些用户。

即:

代码语言:javascript
复制
android:textSize="32dp"
票数 255
EN

Stack Overflow用户

发布于 2013-08-24 20:38:48

要做到这一点,最简单的方法就是使用如下代码:

代码语言:javascript
复制
android:textSize="32sp"

如果您想了解有关textSize属性的更多信息,可以查看Android developer documentation

票数 131
EN

Stack Overflow用户

发布于 2012-11-07 15:27:58

像使用string资源(DOCS)一样使用dimension类型的资源。

dimens.xml文件中,声明尺寸变量:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<resources>
  <dimen name="textview_height">25dp</dimen>
  <dimen name="textview_width">150dp</dimen>
  <dimen name="ball_radius">30dp</dimen>
  <dimen name="font_size">16sp</dimen>
</resources>

然后,您可以像这样使用这些值:

代码语言:javascript
复制
<TextView
   android:layout_height="@dimen/textview_height"
   android:layout_width="@dimen/textview_width"
   android:textSize="@dimen/font_size"/>

您可以为不同类型的屏幕声明不同的dimens.xml文件。这样做可以保证你的应用程序在不同的设备上都能保持理想的外观。

如果不指定android:textSize,系统将使用默认值。

票数 51
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13264794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档