У меня есть ListView, который имеет 1 TextView и 2 кнопки. То, что я пытаюсь сделать, - это когда нажата первая кнопка, я хочу, чтобы она дала мне значение в TextView.Значение TextView из строки Позиция ListView
Я потратил много времени на это, но я не могу найти ответ, который будет правильно работать. У меня есть этот код в моем OnClick метод кнопки:
// position of the button
int position = pendingList.getPositionForView((View) view.getParent());
//extract the text
String pendingUserText = pendingUsers.get(position).get(R.id.name);
Что-то следует отметить, что я использую карту ArrayList для заполнения мой ListView и простой адаптер. Когда я это делаю, проблема, которую я получаю, это когда я пытаюсь Toast.make, а затем передаю «pendingUserText». Через него я получаю нулевое значение. Любая помощь будет принята с благодарностью!
Вот XML-файл
<TextView
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="2dip"
android:paddingTop="6dip"
android:textSize="16sp"
android:textStyle="bold"
android:height="30dp" />
<Button
android:id="@+id/addButton"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:text="Accept"
android:layout_alignTop="@+id/name"
android:layout_centerHorizontal="true"
android:background="#3366CC"
android:textColor="#B0E0E6"
android:layout_alignBottom="@+id/name"
android:clickable="true"
android:bottomLeftRadius="8dp"
android:bottomRightRadius="8dp"
android:topLeftRadius="8dp"
android:topRightRadius="8dp"
android:onClick="addButtonClicked"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:id="@+id/declineButton"
android:text="Decline"
android:textColor="#B0E0E6"
android:background="#3366CC"
android:bottomLeftRadius="8dp"
android:bottomRightRadius="8dp"
android:topLeftRadius="8dp"
android:topRightRadius="8dp"
android:layout_alignTop="@+id/name"
android:layout_alignRight="@+id/name"
android:layout_alignEnd="@+id/name"
android:layout_alignBottom="@+id/name"
android:clickable="true"
/>'
Вот мой ListAdapter
istView list = (ListView) findViewById(R.id.friendslistView);
ListAdapter adapter = new SimpleAdapter(
FriendsActivity.this, pendingUsers,
R.layout.list_item, new String[] {TAG_FROMUSER}, new int[] { R.id.name});
list.setAdapter(adapter);
Pls публикует XML-файлы макета и связанный с ним код для вашего списка и адаптера. –
Вы хотите прочитать хороший учебник и перепроектировать свой код? –
@ TheOriginalAndroid Что значит? – Brockify