java - 字体大小无法适应不同的屏幕尺寸

标签 java android xml eclipse

我已经阅读了有关通过使用“match_parent”和“wrap_content”以及“sp”和“dp”以及相对布局支持不同屏幕尺寸的Android文章。我已经实现了所有这些建议,但是当我在 Eclipse 的 XML 编辑器中将屏幕大小更改为平板电脑时,TextView 和按钮的字体大小似乎根本没有改变以适应更大的屏幕屏幕尺寸。对于较小的屏幕(例如 3.2 英寸)也是如此。有人有什么建议吗?

最佳答案

大量借鉴@CSmith的答案(但不想编辑他的答案,因为它是有效的):

在布局中:

<TextView
 android:id="@+id/yourID"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="My String"
 style="@style/myStyle"
/> 

值/styles.xml:

<?xml version="1.0" encoding="utf-8" ?> 
<resources>
 <style name="myStyle">
  <item name="android:textStyle">bold</item> 
  <item name="android:textColor">#FFFFFFFF</item> 
  <item name="android:textSize">@dimen/my_textsize</item> 
  <item name="android:shadowColor">#FF000000</item> 
  <item name="android:shadowDx">1</item> 
  <item name="android:shadowDy">-1</item> 
  <item name="android:shadowRadius">1</item> 
 </style>
</resources>

值/dimens.xml

<resources>    
    <dimen name="my_textsize">14sp</dimen>
</resources>

值-xlarge/dimens.xml

<resources>    
    <dimen name="my_textsize">20sp</dimen>
</resources>

这将为您在普通设备上提供 14sp 字体,在超大设备上提供 20sp 字体,并减少单独 XML 文件中的重复,因为唯一改变的是 font-size 。

您可以将任何将成为 sp/dp 尺寸的内容作为 . 放入dimens.xml 文件中。

关于java - 字体大小无法适应不同的屏幕尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11453907/

相关文章:

java - Java中如何自动检测文件位置?

java - 将 Cognito 身份验证与弹性负载均衡器结合使用

android - 为什么我不能使用在 .so 库中声明的函数?

java - 找不到无法从 editText 读取的原因

xml - Sql Server 中的东西和 'For Xml Path'

java - <c :if test ='${not empty "${records }"}' > never evaluates false

使用线框生成 Java 代码

android - 在 google maps v2 api for android 上为标记添加标识

android - URL 重定向无法通过 Intent 在 Android 中工作 - (页面未找到错误)

c# - 删除 XML 节点