0
我想以編程方式將線性佈局項添加到按鈕單擊上的父網格佈局。以編程方式將線性佈局項添加到網格佈局
所以我第一次點擊,網格佈局應該是這樣的:
TextView Button
二時間:
TextView Button TextView Button
第三次:
TextView Button TextView Button TextView Button
但什麼是實際發生的情況是:
第一次:
TextView Button
第二時間:
TextView Button Button
第三時間:
TextView Button Button Button
即現有文字視圖值被更新和新的按鈕被添加每一次。我究竟做錯了什麼?
這是父佈局 - fragment_add.xml:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.v7.widget.GridLayout
xmlns:grid="http://schemas.android.com/apk/res-auto"
android:id="@+id/grdl_reminders"
android:layout_width="match_parent"
android:layout_height="wrap_content"
grid:columnCount="5" />
</ScrollView>
這是該項目的佈局 - item_reminder.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"
>
<TextView
android:id="@+id/txt_reminder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2" />
<Button
android:id="@+id/btn_cancelreminder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minHeight="0dp"
android:minWidth="0dp"
android:background="@null"
android:text="X"
android:layout_weight="1"
/>
</LinearLayout>
在我的片段,我膨脹的項目佈局到電網點擊按鈕上的佈局。這是在onCLickListener:
GridLayout gridLayout = (GridLayout) getActivity().findViewById(R.id.grdl_reminders);
//create new item layout
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.item_reminder, gridLayout, true);
TextView tv_reminder = (TextView) v.findViewById(R.id.txt_reminder);
Button btn_cancelReminder = (Button) v.findViewById(R.id.btn_cancelreminder);
String selectedTime = "some new value";
tv_reminder.setText(selectedTime);
上發佈您的點擊收聽 – 2014-08-29 06:38:51
代碼的最後部分是onclickListener – faizal 2014-08-29 06:40:08
當最後一個參數爲真時,檢查inflater.inflate返回的內容 – pskink 2014-08-29 06:44:54