如何修复布局位置错误?

时间:2014-10-07 13:47:56

标签: android xml android-layout

大家好我是android的新手,我的布局有些问题。我想做的是在弹出窗口的末尾放置带有按钮的栏。这是没有描述的情况:

without descriptions

如果有一些描述行,就会发生这种情况:

With description

这是我的XML:

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

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_margin="5dp"
        android:layout_marginBottom="10dp"
        android:adjustViewBounds="true"

        android:src="@drawable/ic_launcher"/>

    <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/title"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="6dp"
                android:textSize="10pt"
                android:textStyle="bold"/>

            <TextView
                android:id="@+id/snippet"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="6dp"
                android:textSize="8pt"/>
    </LinearLayout>
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center_horizontal|center_vertical|fill_horizontal">

        <ImageButton
            android:src="@drawable/telephone_icon"
            android:id="@+id/telephone_icon"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#f5f5f5"/>


        <ImageButton
            android:src="@drawable/email_icon"
            android:id="@+id/email_icon"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#f5f5f5"/>


    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/titolo_descrizione"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="6dp"
            android:textSize="10pt"
            android:textStyle="bold"
            android:text="Descrizione"/>

        <ScrollView
        android:layout_width="wrap_content" 
        android:layout_height="match_parent">
            <TextView
                android:id="@+id/testo_descrizione"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:padding="15dp"
                android:textSize="8pt"
                android:textStyle="italic"/>
        </ScrollView>




    </LinearLayout>

    <RadioGroup
        android:layout_width="fill_parent"
        android:layout_height="48dp"
        android:gravity="right"
        android:orientation="horizontal"
        android:background="#80000000"
        android:padding="4dp"
        android:layout_gravity="bottom">

        <ImageButton
            android:src="@drawable/email_icon"
            android:id="@+id/get_direction_icon"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#f5f5f5"/>
    </RadioGroup>

</LinearLayout>

感谢您的每一个建议!

2 个答案:

答案 0 :(得分:2)

用xml文件替换它

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="4050dp"
android:minHeight="4050dp"
android:layout_height="match_parent"
android:orientation="vertical">

<ImageView
    android:id= "@+id/imageView"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:layout_margin="5dp"
    android:layout_marginBottom="10dp"
    android:adjustViewBounds="true"

    android:src="@drawable/ic_launcher"/>

<LinearLayout
        android:id= "@+id/LinearLayout1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_below="@+id/imageView">

        <TextView
            android:id="@+id/title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="6dp"
            android:textSize="10pt"
            android:textStyle="bold"/>

        <TextView
            android:id="@+id/snippet"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="6dp"
            android:textSize="8pt"/>
</LinearLayout>
<LinearLayout
    android:id= "@+id/LinearLayout2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_below="@+id/LinearLayout1"
    android:gravity="center_horizontal|center_vertical|fill_horizontal">

    <ImageButton
        android:src="@drawable/telephone_icon"
        android:id="@+id/telephone_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#f5f5f5"/>


    <ImageButton
        android:src="@drawable/email_icon"
        android:id="@+id/email_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#f5f5f5"/>


</LinearLayout>

<LinearLayout
    android:id= "@+id/LinearLayout3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/LinearLayout2"
    android:orientation="vertical">

    <TextView
        android:id="@+id/titolo_descrizione"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingLeft="6dp"
        android:textSize="10pt"
        android:textStyle="bold"
        android:text="Descrizione"/>

    <ScrollView
    android:layout_width="wrap_content" 
    android:layout_height="match_parent">
        <TextView
            android:id="@+id/testo_descrizione"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:padding="15dp"
            android:textSize="8pt"
            android:textStyle="italic"/>
    </ScrollView>




</LinearLayout>

<RadioGroup
    android:id= "@+id/RadioGroup"
    android:layout_width="fill_parent"
    android:layout_height="48dp"
    android:gravity="right"
    android:orientation="horizontal"
    android:background="#80000000"
    android:padding="4dp"
    android:alignparentBottom = "true"
    android:layout_gravity="bottom">

    <ImageButton
        android:src="@drawable/email_icon"
        android:id="@+id/get_direction_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#f5f5f5"/>
</RadioGroup>

</RelativeLayout>

我之前只更改了您的代码,因此请根据您的要求更改ID名称

答案 1 :(得分:0)

使用RelativeLayout并为您的ImageButton设置android:alignParentBottom="true"