Android TextView十进制大小问题

时间:2017-07-18 09:41:41

标签: android textview density-independent-pixel

我测试了模拟器和真实设备,但正如您所看到的,40 dp和40.2 dp之间没有变化!我正在开发一个具有很高字体敏感度的项目,问题是android文本引擎的行为。

有没有办法阻止这种情况?

请帮忙!

这是代码:

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="SAMPLE TEXT"
            android:textSize="40dp" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="SAMPLE TEXT"
            android:textSize="40.2dp" />

    </LinearLayout>

结果:

2 个答案:

答案 0 :(得分:0)

您应该始终使用SP作为字体,因为它尊重用户首选项

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="SAMPLE TEXT"
        android:textSize="40sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="SAMPLE TEXT"
        android:textSize="40.2sp" />

答案 1 :(得分:0)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="SAMPLE TEXT"
    android:textSize="40sp" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="SAMPLE TEXT"
    android:textSize="40.2sp" />

你可以看到这样的差异(在android studio中你需要缩放布局屏幕)。没有Android文本引擎的行为问题。

enter image description here