Android按钮点击

时间:2016-04-06 06:18:08

标签: android include relativelayout programmatically-created

我有一个片段,其中有一个按钮,单击该按钮时必须在其他下方添加相对布局。多次单击该按钮时,必须在前一个按钮下方添加相同的布局。

hotel_search.xml点击id(@+id/addroom)按钮后,hotel_room_fragment中的布局必须添加到RelativeLayout下方,ID为@+id/roomlayout,如果是hotel_room_fragment单击 <RelativeLayout android:id="@+id/roomlayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/transparent"> <TextView android:id="@+id/rooms" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/adults" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/rooms" android:layout_toEndOf="@+id/button3" android:layout_toRightOf="@+id/button3" android:text="Adults" android:textColor="#BDBDBD" /> <Button android:id="@+id/button3" android:layout_width="30dp" android:layout_height="30dp" android:layout_below="@+id/adults" android:layout_marginLeft="18dp" android:layout_marginStart="18dp" android:layout_marginTop="10dp" android:layout_toEndOf="@+id/rooms" android:layout_toRightOf="@+id/rooms" android:background="#90006064" android:text="-" android:textColor="#fff" android:textSize="22sp" /> <Button android:id="@+id/button4" android:layout_width="30dp" android:layout_height="30dp" android:layout_alignLeft="@+id/adults" android:layout_alignStart="@+id/adults" android:layout_alignTop="@+id/button3" android:layout_marginLeft="37dp" android:layout_marginStart="37dp" android:background="#90006064" android:text="+" android:textColor="#fff" android:textSize="18sp" /> <TextView android:id="@+id/children" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button3" android:layout_alignParentEnd="true" android:layout_alignParentRight="true" android:layout_marginEnd="38dp" android:layout_marginRight="38dp" android:text="Children" android:textColor="#BDBDBD" /> <Button android:id="@+id/button6" android:layout_width="30dp" android:layout_height="30dp" android:layout_marginEnd="13dp" android:layout_marginRight="13dp" android:background="#90006064" android:text="+" android:textColor="#fff" android:textSize="18sp" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" /> <Button android:id="@+id/button5" android:layout_width="30dp" android:layout_height="30dp" android:background="#90006064" android:text="-" android:textColor="#fff" android:textSize="22sp" android:layout_alignParentBottom="true" android:layout_toLeftOf="@+id/button6" android:layout_toStartOf="@+id/button6" android:layout_marginRight="41dp" android:layout_marginEnd="41dp" /> </RelativeLayout> <View android:id="@+id/view3" android:layout_width="100dp" android:layout_height="0.5dp" android:layout_marginTop="20dp" android:background="#00838F" android:foregroundGravity="center" android:layout_below="@+id/scrollView" android:layout_toRightOf="@+id/checkin" android:layout_toEndOf="@+id/checkin"></View> <Button android:layout_width="wrap_content" android:layout_height="30dp" android:text="Add Room" android:id="@+id/addroom" android:textColor="#fff" android:layout_marginLeft="20dp" android:background="#50000000" android:layout_marginTop="20dp" android:layout_below="@+id/view3"/> 中的相同布局必须包含在先前添加的布局下方。

另请告诉我如何在单击关闭按钮时删除布局。

hotel_search.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/roomlayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/transparent">


    <TextView
        android:id="@+id/rooms"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/adults"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/rooms"

        android:layout_toEndOf="@+id/button3"
        android:layout_toRightOf="@+id/button3"
        android:text="Adults"
        android:textColor="#BDBDBD" />

    <Button
        android:id="@+id/button3"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_below="@+id/adults"
        android:layout_marginLeft="18dp"
        android:layout_marginStart="18dp"
        android:layout_marginTop="10dp"
        android:layout_toEndOf="@+id/rooms"
        android:layout_toRightOf="@+id/rooms"
        android:background="#90006064"
        android:text="-"
        android:textColor="#fff"
        android:textSize="22sp" />

    <Button
        android:id="@+id/button4"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_alignLeft="@+id/adults"
        android:layout_alignStart="@+id/adults"
        android:layout_alignTop="@+id/button3"
        android:layout_marginLeft="37dp"

        android:layout_marginStart="37dp"
        android:background="#90006064"
        android:text="+"
        android:textColor="#fff"
        android:textSize="18sp" />

    <TextView
        android:id="@+id/children"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/button3"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginEnd="38dp"
        android:layout_marginRight="38dp"
        android:text="Children"
        android:textColor="#BDBDBD" />

    <Button
        android:id="@+id/button6"
        android:layout_width="30dp"
        android:layout_height="30dp"

        android:background="#90006064"
        android:text="+"
        android:textColor="#fff"
        android:textSize="18sp"

        android:layout_marginRight="13dp"
        android:layout_marginEnd="13dp"
        android:layout_alignTop="@+id/button5"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />

    <Button
        android:id="@+id/button5"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:background="#90006064"
        android:text="-"
        android:textColor="#fff"
        android:textSize="22sp"
        android:layout_alignTop="@+id/button4"
        android:layout_toLeftOf="@+id/children"
        android:layout_toStartOf="@+id/children" />
</RelativeLayout>

hotel_room_fragment.xml:

angular.injector(['ng', 'MyModule']).get('MyService')

1 个答案:

答案 0 :(得分:0)

我同意Bona Fide你应该使用listView / RecyclerView,只是为了指出。

无论如何,在你的onClick方法中,你创建一个新的RelativeLayout()调用setID()与一些随机int(你不能使用硬编码),然后将它存储在类字段,如private int lastId;

完成后,在LayoutParams.addRule()调用中,将您的R.id.roomlayout替换为lastId字段。

希望你明白了。