0

我正在开发我的第一个 android 应用程序,我无法找到解决方案的一个问题是相对布局和页脚栏。

我已经设置了一个相对布局,底部有一个按钮栏。它可以查找其他线性布局中是否有足够的内容;但是,当没有足够的内容来填充页面时,内容将在按钮栏顶部的底部对齐。我希望它在顶部与底部的按钮栏对齐。我已经尝试了所有可以找到的 align top 选项并将内容高度设置为 fill_parent/match_parent,但所有这些都会导致线性布局内的项目消失。

我怎样才能解决这个问题?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ViewPost"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#c9c9c9" >

    <LinearLayout
    android:id="@+id/bottom_control_bar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true" >
    <Button
        android:id="@+id/btnComment"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1.0"
        android:drawableLeft="@drawable/content_new_event"
        android:paddingBottom="2dip"
        android:paddingLeft="8dip"
        android:paddingRight="8dip"
        android:paddingTop="2dip"
        android:text="@string/BtnComment"
        android:textColor="#797979"
        android:textSize="14sp" />

    <Button
        android:id="@+id/btnMeToo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1.0"
        android:drawableLeft="@drawable/social_add_group"
        android:paddingBottom="2dip"
        android:paddingLeft="8dip"
        android:paddingRight="8dip"
        android:paddingTop="2dip"
        android:text="@string/BtnMeToo"
        android:textColor="#797979"
        android:textSize="14sp" />

    <Button
        android:id="@+id/btnFlag"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1.0"
        android:drawableLeft="@drawable/flag"
        android:paddingBottom="2dip"
        android:paddingLeft="8dip"
        android:paddingRight="8dip"
        android:paddingTop="2dip"
        android:text="@string/BtnFlag"
        android:textColor="#797979"
        android:textSize="14sp" />

    <Button
        android:id="@+id/btnShare"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1.0"
        android:drawableLeft="@drawable/social_share"
        android:paddingBottom="2dip"
        android:paddingLeft="8dip"
        android:paddingRight="8dip"
        android:paddingTop="2dip"
        android:text="@string/BtnShare"
        android:textColor="#797979"
        android:textSize="14sp" />
    </LinearLayout>

    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@id/bottom_control_bar"
    android:layout_marginBottom="5dip"
    android:layout_marginLeft="10dip"
    android:layout_marginRight="10dip"
    android:layout_marginTop="10dip"
    android:background="#ffffff"
    android:gravity="top"
    android:orientation="vertical"
    android:weightSum="1.0" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal" >

        <TextView
        android:id="@+id/ticket_id"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:visibility="gone" />

        <ImageView
        android:id="@+id/ticket_owner_image2"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_marginLeft="1dp"
        android:layout_marginTop="1dp"
        android:background="#797979"
        android:contentDescription="@string/StdImageDesc"
        android:padding="1dp"
        android:scaleType="fitXY"
        android:src="@drawable/picture" />

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

        <TextView
            android:id="@+id/ticket_owner_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dip"
            android:layout_marginTop="5dip"
            android:paddingLeft="5dip"
            android:textColor="#595959"
            android:textSize="10sp" />

        <TextView
            android:id="@+id/ticket_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dip"
            android:layout_marginTop="2dip"
            android:paddingLeft="5dip"
            android:textColor="#595959"
            android:textSize="14sp" />

        <TextView
            android:id="@+id/ticket_create_date"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dip"
            android:layout_marginTop="2dip"
            android:paddingLeft="5dip"
            android:textColor="#595959"
            android:textSize="10sp" />
        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center" >

        <TextView
        android:id="@+id/ticket_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal|center_vertical"
        android:layout_margin="5dip"
        android:textColor="#595959"
        android:textSize="14sp" />
    </LinearLayout>

    <ListView
        android:id="@+id/commentlist"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:cacheColorHint="#00000000"
        android:divider="#b5b5b5"
        android:dividerHeight="1dp" />
    </LinearLayout>

</RelativeLayout>
4

2 回答 2

1

尝试以下操作,让我知道您是否想要实现以下目标:

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/ViewPost"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#c9c9c9" >

        <ListView
            android:id="@+id/commentlist"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:cacheColorHint="#00000000"
            android:layout_below="@+id/linear1"
            android:layout_above="@+id/bottom_control_bar"
            android:divider="#b5b5b5"
            android:dividerHeight="1dp" />

        <LinearLayout
            android:id="@+id/bottom_control_bar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true" >

            <Button
                android:id="@+id/btnComment"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:drawableLeft="@drawable/dummy_heyzooka_icon_blue"
                android:paddingBottom="2dip"
                android:paddingLeft="8dip"
                android:paddingRight="8dip"
                android:paddingTop="2dip"
                android:text="aa"
                android:textColor="#797979"
                android:textSize="14sp" />

            <Button
                android:id="@+id/btnMeToo"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:drawableLeft="@drawable/dummy_heyzooka_icon_blue"
                android:paddingBottom="2dip"
                android:paddingLeft="8dip"
                android:paddingRight="8dip"
                android:paddingTop="2dip"
                android:text="dd"
                android:textColor="#797979"
                android:textSize="14sp" />

            <Button
                android:id="@+id/btnFlag"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:drawableLeft="@drawable/dummy_heyzooka_icon_blue"
                android:paddingBottom="2dip"
                android:paddingLeft="8dip"
                android:paddingRight="8dip"
                android:paddingTop="2dip"
                android:text="ff"
                android:textColor="#797979"
                android:textSize="14sp" />

            <Button
                android:id="@+id/btnShare"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1.0"
                android:drawableLeft="@drawable/dummy_heyzooka_icon_blue"
                android:paddingBottom="2dip"
                android:paddingLeft="8dip"
                android:paddingRight="8dip"
                android:paddingTop="2dip"
                android:text="ff"
                android:textColor="#797979"
                android:textSize="14sp" />
        </LinearLayout>

        <LinearLayout
            android:id="@+id/linear1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_marginBottom="5dip"
            android:layout_marginLeft="10dip"
            android:layout_marginRight="10dip"
            android:layout_marginTop="10dip"
            android:background="#ffffff"
            android:gravity="top"
            android:orientation="vertical"
            android:weightSum="1.0" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_gravity="top"
                android:orientation="horizontal" >

                <TextView
                    android:id="@+id/ticket_id"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:visibility="gone" />

                <ImageView
                    android:id="@+id/ticket_owner_image2"
                    android:layout_width="50dp"
                    android:layout_height="50dp"
                    android:layout_marginLeft="1dp"
                    android:layout_marginTop="1dp"
                    android:background="#797979"
                    android:contentDescription="ada"
                    android:padding="1dp"
                    android:scaleType="fitXY"
                    android:src="@drawable/dummy_heyzooka_icon_blue" />

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

                    <TextView
                        android:id="@+id/ticket_owner_name"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginLeft="10dip"
                        android:layout_marginTop="5dip"
                        android:paddingLeft="5dip"
                        android:textColor="#595959"
                        android:textSize="10sp" />

                    <TextView
                        android:id="@+id/ticket_title"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginLeft="10dip"
                        android:layout_marginTop="2dip"
                        android:paddingLeft="5dip"
                        android:textColor="#595959"
                        android:textSize="14sp" />

                    <TextView
                        android:id="@+id/ticket_create_date"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginLeft="10dip"
                        android:layout_marginTop="2dip"
                        android:paddingLeft="5dip"
                        android:textColor="#595959"
                        android:textSize="10sp" />
                </LinearLayout>
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_gravity="center" >

                <TextView
                    android:id="@+id/ticket_text"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_horizontal|center_vertical"
                    android:layout_margin="5dip"
                    android:textColor="#595959"
                    android:textSize="14sp" />
            </LinearLayout>
        </LinearLayout>

    </RelativeLayout>
于 2013-03-01T17:06:30.923 回答
0

嗨首先,当您使用相对布局时要小心,因为如果您更改对齐或对该布局的任何修改,它将消失(或)它可能会更改对齐,所以不要担心撤消您的布局,您可以回到您的以前的对齐方式现在您可以在布局中逐项修改。

于 2013-03-01T17:04:13.947 回答