布局与预览不匹配

时间:2012-04-28 18:31:56

标签: android android-linearlayout

我设计了一个用户按下按钮时显示的操作表。它是一个单独的xml文件,我将其包含在另一个布局文件中。在布局预览中,它看起来完全符合我的要求。但是,当它在我的手机上运行时,布局就搞乱了。

以下是它的外观:

Should Look

以下是它的外观: Does Look

有谁知道为什么会这样?

以下是操作表的布局代码。未正确显示的部分位于最后一个线性布局

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

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/sheet_header" >

        <ImageButton
            android:id="@+id/left_justified"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/center_justified"
            android:layout_toLeftOf="@+id/center_justified"
            android:background="@android:color/transparent"
            android:src="@drawable/alignment_left" />

        <ImageButton
            android:id="@+id/center_justified"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="13dp"
            android:background="@android:color/transparent"
            android:src="@drawable/alignment_center" />

        <ImageButton
            android:id="@+id/right_justified"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/center_justified"
            android:layout_toRightOf="@+id/center_justified"
            android:background="@android:color/transparent"
            android:src="@drawable/alignment_right" />

        <ImageButton
            android:id="@+id/close_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/center_justified"
            android:background="@android:color/transparent"
            android:layout_alignParentRight="true"
            android:layout_alignTop="@+id/center_justified"
            android:layout_marginRight="10dp"
            android:src="@drawable/sheet_done_btn"
            />
    </RelativeLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/sheet_background"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="15dp" >

            <TextView
                android:id="@+id/font_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:gravity="center"
                android:text="Font"
                android:textColor="#806014"
                android:textSize="20sp" />

            <TextView
                android:id="@+id/size_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:gravity="center"
                android:text="Size"
                android:textColor="#806014"
                android:textSize="20sp" />

            <TextView
                android:id="@+id/color_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:gravity="center"
                android:text="Color"
                android:textColor="#806014"
                android:textSize="20sp" />
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

以下是它的包含方式:

<FrameLayout 
    android:layout_alignParentBottom="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/edit_text_frame">  

    <include layout="@layout/edit_text"/>
</FrameLayout>

编辑:除了针对此特定问题的修复程序之外,是否有人知道预览与实际显示在手机上的方式不符的原因?

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

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

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/sheet_header" >

        <ImageButton
            android:id="@+id/left_justified"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/center_justified"
            android:layout_toLeftOf="@+id/center_justified"
            android:background="@android:color/transparent"
            android:src="@drawable/alignment_left" />

        <ImageButton
            android:id="@+id/center_justified"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="13dp"
            android:background="@android:color/transparent"
            android:src="@drawable/alignment_center" />

        <ImageButton
            android:id="@+id/right_justified"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/center_justified"
            android:layout_toRightOf="@+id/center_justified"
            android:background="@android:color/transparent"
            android:src="@drawable/alignment_right" />

        <ImageButton
            android:id="@+id/close_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/center_justified"
            android:background="@android:color/transparent"
            android:layout_alignParentRight="true"
            android:layout_alignTop="@+id/center_justified"
            android:layout_marginRight="10dp"
            android:src="@drawable/sheet_done_btn"
            />
    </RelativeLayout>



        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="15dp" 
        android:background="@drawable/sheet_background"
        android:orientation="vertical" >

            <TextView
                android:id="@+id/font_text"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center"
                android:text="Font"
                android:textColor="#806014"
                android:textSize="20sp" />

            <TextView
                android:id="@+id/size_text"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center"
                android:text="Size"
                android:textColor="#806014"
                android:textSize="20sp" />

            <TextView
                android:id="@+id/color_text"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center"
                android:text="Color"
                android:textColor="#806014"
                android:textSize="20sp" />
        </LinearLayout>


</LinearLayout>

答案 1 :(得分:0)

您可以将字体,大小,颜色TextView放入表格布局中。