Android studio设计预览与运行时布局不同

时间:2014-06-05 11:20:08

标签: android android-layout

我列出了一个像这样的xml文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="16dp"
    android:paddingBottom="16dp"
    tools:context=".MainActivity">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:background="@android:color/holo_red_dark"
        android:paddingLeft="8dp"
        android:paddingRight="8dp">


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:paddingTop="8dp"
            android:paddingBottom="8dp">

            <TextView
                android:textAppearance="@android:style/TextAppearance.Large"
                android:id="@+id/price_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="50 234 qwerty."/>

            <TextView
                android:id="@+id/discount_text"
                android:layout_width="wrap_content"
                android:textAppearance="@android:style/TextAppearance.Small"
                android:layout_height="wrap_content"
                android:text="qwerty 12 3456."/>

        </LinearLayout>

    </RelativeLayout>

</RelativeLayout>

但是,应用程序运行时显示的结果与预览窗口不同。特别是底部文字似乎被切断了。我在应用程序和预览窗口中都有相同的主题设置,我使用相同的设备。设备上的文字大小正常。它仍然不同 - 为什么?

App is running Design preview

2 个答案:

答案 0 :(得分:0)

试试这个..

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/holo_red_dark"
    android:paddingLeft="8dp"
    android:paddingRight="8dp" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:paddingBottom="8dp"
        android:paddingTop="8dp" >

        <TextView
            android:id="@+id/price_text"
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="50 234 qwerty."
            android:textAppearance="@android:style/TextAppearance.Large" />

        <TextView
            android:id="@+id/discount_text"
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="qwerty 12 3456."
            android:textAppearance="@android:style/TextAppearance.Small" />
    </LinearLayout>
</RelativeLayout>

答案 1 :(得分:0)

在android studio中,预览的api是19,然后在你的模拟器api中是18.它似乎@android:style/TextAppearance.Largesmall的维度不同。

在预览和执行代码中尝试使用相同的api。