使用sp进行大型布局的文本在两个不同的大型布局android屏幕上看起来不同

时间:2012-03-31 21:17:04

标签: android

我有两片7英寸屏幕。我设计了一个专门用于大型布局(res / layout-large)的布局。这两款平板电脑尺寸完全相同(1024x600)。我使用sp来指定文本大小。但是一个平板电脑上的文字看起来不错,而另一个平板电脑上的文字太大了。我确定这是大型布局xml正在唤起(我用文本的颜色做了一些检查)。我认为因为它们都是相同的尺寸,所以两个屏幕上的文字看起来完全相同。为什么文字看起来完全不同?密度与尺寸有关吗?

有xml ....

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">


    <TextView android:id="@+id/text"
        style="@style/CategoryStyle" 
        android:layout_gravity="center_vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:text="TOP"

            android:textSize="38sp"
        />

    <TextView android:id="@+id/textBottom"
        style="@style/CategoryStyleBottom" 
        android:layout_gravity="center_vertical"
        android:layout_below="@+id/text"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:text="(BOTTOM)"

        android:textSize="22sp"
     /> 
</RelativeLayout>

感谢。

1 个答案:

答案 0 :(得分:1)

平板电脑可能具有相同的尺寸,但是它们具有相同的像素密度吗?根据我的理解,'sp'是与比例无关的测量,因此它将考虑用户的字体大小偏好以及像素密度。

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension

仅仅为了争论,如果你将你的单位翻转为'dp',两个设备是否都会将文字字体大小相同?如果是这样,您的平板电脑可能有一个用户定义的字体大小设置?