1

我有这个 xml 布局代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_horizontal" 
    android:background="#FFFFFF">
    <ScrollView 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >

        <TableLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TextView
            android:id="@+id/nektaText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:textSize="10pt"
            android:textAlignment="center"
            android:text="example text will not be used" />

            <ImageView
            android:id="@+id/horilinee"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingTop="5dp"
            android:paddingBottom="5dp"
            android:src="@drawable/horiline" />

            <TableRow
                android:id="@+id/table"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom" >

                <Button
                android:id="@+id/send"
                android:text="أرسل"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1" />

                <EditText
                android:id="@+id/commenttext"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:hint="اكتب التعليق هنا"
                android:minLines="1"
                android:paddingRight="5dp"
                android:paddingLeft="5dp"
                android:scrollHorizontally="true"
                android:scrollbars="vertical"
                android:layout_weight="1"
                android:singleLine="false" />

            </TableRow>

            <ImageView
            android:id="@+id/horilineee"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingTop="5dp"
            android:paddingBottom="5dp"
            android:src="@drawable/horiline" />

            <ListView
                android:id="@id/android:list"
                android:layout_width="match_parent"
                android:layout_height="fill_parent"
                android:drawSelectorOnTop="false"
                android:paddingLeft="5dp"
                android:paddingRight="5dp" />

        </TableLayout>
    </ScrollView>


    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"

        android:gravity="center_horizontal" >

        <TableLayout
            android:id="@+id/tableLayout1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >

            <TableRow
                android:id="@+id/tableRow0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom"
                android:paddingBottom="10dp"
                android:paddingTop="10dp" >

                <ImageView
                    android:id="@+id/horiline"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:src="@drawable/horiline" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom" >

                <ImageView
                    android:id="@+id/share"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:src="@drawable/share" />

                <ImageView
                    android:id="@+id/block"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:src="@drawable/block" />

                <ImageView
                    android:id="@+id/thumbdown"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:src="@drawable/thumbdown" />

                <ImageView
                    android:id="@+id/thumbup"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:src="@drawable/thumbup" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom" >

                <TextView
                    android:id="@+id/sharetext"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:text="شارك"
                    android:textSize="12dp" />

                <TextView
                    android:id="@+id/blocktext"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:text="إبلاغ إساءة"
                    android:textSize="12dp" />

                <TextView
                    android:id="@+id/dislikenumber"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:textColor="#FF0000"
                    android:textSize="12dp" />

                <TextView
                    android:id="@+id/likenumber"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:textColor="#00FF00"
                    android:textSize="12dp" />
            </TableRow>
        </TableLayout>
    </LinearLayout>

</RelativeLayout>

但它似乎并没有像我想要的那样工作。我需要它,如下图:

数字

我的代码的问题是列表视图我无法在表格布局之前将其拉伸到底部。如果顶部的文本视图太长,则会出现另一个问题,它出现在表格布局下方并且可见。

当键盘可见时,底部的表格布局也向上移动,我不希望这种情况发生。

请问有什么建议吗?

4

4 回答 4

1

在您的布局中有一个ListView 。您可以使用addHeaderView()方法将其他视图(如图所示)作为标题添加到列表视图。这样,您将获得所需的滚动效果。

于 2013-02-13T09:23:09.307 回答
0

谢谢大家的支持。我想出了一个更好的解决方案:

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

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="vertical" >

        <ScrollView
            android:layout_width="fill_parent"
            android:layout_height="70dp"
            android:layout_weight="1" >

            <TextView
                android:id="@+id/nektaText"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:text="example text will not be used"
                android:textAlignment="center"
                android:textSize="10pt" />
        </ScrollView>

        <ImageView
            android:id="@+id/horilinee"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingBottom="5dp"
            android:paddingTop="5dp"
            android:src="@drawable/horiline" />

        <TableRow
            android:id="@+id/table"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_weight="0.5"
            android:gravity="bottom" >

            <Button
                android:id="@+id/send"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="4"
                android:text="أرسل" />

            <EditText
                android:id="@+id/commenttext"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:hint="اكتب التعليق هنا"
                android:minLines="1"
                android:paddingLeft="5dp"
                android:paddingRight="5dp"
                android:scrollHorizontally="true"
                android:scrollbars="vertical"
                android:singleLine="false" />
        </TableRow>

        <ImageView
            android:id="@+id/horilineee"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingBottom="5dp"
            android:paddingTop="5dp"
            android:src="@drawable/horiline" />

        <ListView
            android:id="@id/android:list"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="50"
            android:drawSelectorOnTop="false"
            android:paddingLeft="5dp"
            android:paddingRight="5dp" />

    </LinearLayout>

    <LinearLayout
        android:id="@+id/layout0"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="end" >

        <TableLayout
            android:id="@+id/tableLayout1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >

            <TableRow
                android:id="@+id/tableRow0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom"
                android:paddingBottom="10dp"
                android:paddingTop="10dp" >

                <ImageView
                    android:id="@+id/horiline"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:src="@drawable/horiline" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom" >

                <ImageView
                    android:id="@+id/share"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:src="@drawable/share" />

                <ImageView
                    android:id="@+id/block"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:src="@drawable/block" />

                <ImageView
                    android:id="@+id/thumbdown"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:src="@drawable/thumbdown" />

                <ImageView
                    android:id="@+id/thumbup"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:src="@drawable/thumbup" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:gravity="bottom" >

                <TextView
                    android:id="@+id/sharetext"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:text="شارك"
                    android:textSize="12dp" />

                <TextView
                    android:id="@+id/blocktext"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:text="إبلاغ إساءة"
                    android:textSize="12dp" />

                <TextView
                    android:id="@+id/dislikenumber"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:textColor="#FF0000"
                    android:textSize="12dp" />

                <TextView
                    android:id="@+id/likenumber"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:textColor="#00FF00"
                    android:textSize="12dp" />
            </TableRow>
        </TableLayout>
    </LinearLayout>

</LinearLayout>
于 2013-02-15T04:37:11.737 回答
-1

由于您的 Layout 只有两个,请RelativeLayout使用LinearLayout. 这将解决重叠问题。设置权重ScrollView以保持TableLayout底部。

键盘移动底部表格布局,因为它的模式设置为Resize. 您通常会通过android:windowSoftInputModeAndroidManifest.xml 中每个定义的属性来控制此行为。将此值设置为adjustPan

于 2013-02-13T09:21:26.580 回答
-1

ScrollView 需要声明:

android:layout_above="@+id/Layout1" 

Layout1 是承载 tableLayout1 的布局

但是你会遇到一些 ListView 到 scrollView 的问题

于 2013-02-13T09:09:07.853 回答