2015-03-03 3 views
-2

У меня есть пользовательский адаптер, в котором каждая строка имеет 2 макета, каждый из которых имеет TextView. Теперь, как я могу получить текст строки, которая была нажата пользователем.Listview custom Adapter On click

+1

, что вы пробовали до сих пор? –

+0

установить индивидуальный просмотрщик на макеты. –

+0

У меня есть 2layout в 1row, поэтому я могу иметь n рядов строк – Hii

ответ

0

Вы можете получить позицию щелчка, а затем получить значение/текст для этой позиции из текстового массива.

например ваше имя массива String[] titles = {"Zero", "One", "Two", "Three", "Four"};

Таким образом, когда пользователь нажимает на элемент в ListView вы получите свою позицию на основе значения из onItemClickListener. Таким образом, вы можете принять это значение (int) и сделать это.

String textClicked = titles[position]; // Он вернет текст, сохраненный в этом положении.

Если у вас все еще есть сомнения, то комментарий ниже, и я помогу вам с тем же.

ИЛИ

В пользовательском адаптере вы можете сделать так:

public class MyAdapter extends ArrayAdapter<String> { 

String[] titles = same as mentioned above.. Let it be the String which you will get as the title of the each row of ListView 

public View getView(int position, View convertView, ViewGroup parent) { 
View view = super.getView(position, convertView, parent); 
Log.d("title", titles[position]); // It will log the text of that clicked position. now you can use it in Toast, TextView etc... 
    } 

    return view; 
} 
+0

У меня есть 2layout в 1row, поэтому я могу иметь n количество строк – Hii

+0

Да, правильно, но когда вы реализуете OnItemClickListener, вам нужно переопределить метод onClick ... и там вы получите позицию щелкнув элемент. Вы можете передать эту позицию в массиве String данных, которые вы накачиваете в ListView. что вы даете вам текст там ... Это не важно, сколько строк или компонентов у вас есть в ListView. вам просто нужно передать правильное имя массива String – shivamDev

+0

Добавлен еще один пример для вашего понимания. Это последний комментарий с моего конца, поскольку вы не предоставили никакого кода и не отвечали на какую-либо помощь, которую вам предоставили. – shivamDev

Смежные вопросы