Привет, я динамически создаю элементы строки, когда я нажимаю кнопку Button am, накачивая строку edittexts и добавляя ее в свой контейнер. У меня есть счетчик в строке. Для конкретного spinner я устанавливаю адаптер массива.Android: динамическое добавление просмотров в вид контейнера
Проблема заключается в том, что при попытке добавить еще одну строку с помощью spinner мне нужен тот же набор адаптеров массива, который будет установлен второй рядный счетчик строк, но это создает проблему, которая мешает первому счетчику, поскольку оба они из одного и того же XML-файла.
Как подать несколько идентификаторов на счетчик и рассматривать их как разные прядильщики.
addviewbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
LayoutInflater layoutInflater =
(LayoutInflater) getBaseContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
addView = layoutInflater.inflate(R.layout.quote_row, null);
container.addView(addView);
for (int i = 0; i < container.getChildCount(); i++) {
View view = container.getChildAt(i);
spinner = (Spinner) view.findViewById(R.id.product);
String[] items = new String[]{"1", "2", "three"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getBaseContext(), android.R.layout.simple_spinner_dropdown_item, items);
spinner.setAdapter(adapter);
}
}
});
quote_row.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="1">
<TextView
android:id="@+id/TextView04h" android:text="1"
android:layout_weight="0.1"
android:textColor="#000000"
android:padding="10dp" android:gravity="center|center_vertical"
android:layout_margin="2dp"
android:layout_width="0dp"
android:layout_height="wrap_content"/>
<EditText
android:id="@+id/quantity"
android:layout_weight="0.1"
android:textColor="#000000"
android:padding="10dp" android:gravity="center"
android:background="@drawable/edit_text_border"
android:layout_margin="2dp"
android:layout_width="0dp"
android:layout_height="wrap_content"/>
<Spinner
android:id="@+id/product"
android:layout_weight="0.4"
android:textColor="#000000"
android:padding="10dp" android:gravity="center"
android:background="@drawable/edit_text_border"
android:layout_marginLeft="2dp"
android:layout_marginRight="2dp"
android:layout_width="0dp"
android:layout_height="44dp"/>
<EditText
android:id="@+id/unitprice"
android:layout_weight="0.2"
android:textColor="#000000"
android:padding="10dp" android:gravity="center"
android:background="@drawable/edit_text_border"
android:layout_margin="2dp"
android:layout_width="0dp"
android:layout_height="wrap_content"/>
<EditText
android:id="@+id/exactprice"
android:layout_weight="0.2"
android:textColor="#000000"
android:padding="10dp" android:gravity="center"
android:background="@drawable/edit_text_border"
android:layout_margin="2dp"
android:layout_width="0dp"
android:layout_height="wrap_content"/>
</TableRow>
</TableLayout>
</RelativeLayout>
место quote_row XML. –
@DheerubhaiBansal добавил xml-файл – hari86