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>

しかし、私が望んでいるようには機能していないようです。次の図のように必要です。

形

私のコードの問題は、テーブルレイアウトの前にリストビューを一番下まで伸ばすことができないことです。もう1つの問題は、上部のテキストビューが長すぎる場合に発生し、テーブルレイアウトの下に表示されて表示されます.

また、キーボードが表示されているときに下部のテーブルレイアウトが上に移動するので、これが発生したくありません。

何か提案はありますか?

4

4 に答える 4

1

レイアウトに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

には 2 つのレイアウトしかないRelativeLayoutため、 を使用しますLinearLayout。これにより、重複の問題が解決されます。ScrollViewを最下部に保持するための重みを設定しTableLayoutます。

キーボードは、モードが に設定されているため、Bottom テーブル レイアウトをシフトしますResizeandroid:windowSoftInputMode通常、AndroidManifest.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 に答える