3

テキストビューを含むフレームレイアウトを画面から削除して、他のすべてのレイアウトが上に移動してその場所に配置されるようにします。レイアウトは次のとおりです。

    <?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" >

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


        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >


            <EditText
                android:id="@+id/etWarning"
                android:layout_width="fill_parent"
                android:layout_height="109dp"
                android:clickable="false"
                android:ems="10"
                android:enabled="false"
                android:focusable="false"
                android:inputType="textMultiLine" />

        </FrameLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:paddingTop="10dp" >

            <TextView
                android:id="@+id/tvReasonLabel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/ndr_Reason"
                android:textAppearance="?android:attr/textAppearanceMedium" />


            <Spinner
                android:id="@+id/spinNDRreasons"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

        </LinearLayout>

               <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/tvQueston"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingTop="10dp"
                android:paddingBottom="5dp"
                android:text="Extra question goes here"
                android:textAppearance="?android:attr/textAppearanceMedium" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">


            <EditText
                android:id="@+id/etResponse"
                android:layout_width="wrap_content"
                android:layout_height="120dp"
                android:layout_weight="1"
                android:ems="10"
                android:inputType="textMultiLine" />

        </LinearLayout>

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

            <Button
                android:id="@+id/cmdDoneNDR"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="@string/cmd_done" />
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

一番上のレイアウトは、他のレイアウトがない場合に上に移動して追加/削除できるようにしたいものです。

フレームレイアウトは必要ですか?

ありがとう

4

1 に答える 1

3

framelayout に ID を指定し、Java アクティビティ コードで、そのビューの setvisibility を gone に設定します。

また

実際には、そのフレームレイアウト内にビューが 1 つしかないため、やりたいことがあるかもしれません

etWarning.setVisibility(View.GONE); // this is for gone

etWarning.setVisibility(View.VISBLE); // this is to show it

お役に立てれば

于 2012-07-06T02:46:53.673 に答える