В общем случае для RecyclerView
мы создаем интерфейс для обработки событий нажатия.В отличие от обычного нажатия кнопки, события RecyclerView Click не могут быть обработаны напрямую.Поскольку RecyclerView - это адаптер (поставщик данных для представления), вы не можете напрямую обрабатывать щелчки элементов отсюда и обновлять представление.Для этого вам нужен отдельный интерфейс, который в вашем случае равен ItemClickListener
(создайте файл интерфейса отдельно в вашем проекте).В этом интерфейсе вам нужно объявить метод, например, что-то вроде этого
public Interface ItemClickListener{
void onRecyclerViewItemClicked(int position);
}
Создать OnClickListener для вашего просмотра (который присутствует в одной строке. Например: изображение, текст и т. Д.); @ Override
public void onBindViewHolder(ViewHolder holder, int position) {
holder.myText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
itemClickListener.onRecyclerViewItemClicked(position);
//itemClickListener is the Interface Reference Variable
}
});
}
И в вашей Деятельности вам необходимо реализовать этот Интерфейс, такой как
public class YourActivity extends AppCompatActivity implements ItemClickListener {
....
....
protected void onCreate(Bundle savedInstanceState) {
...
...
}
@Override
public void onRecyclerViewItemClicked(int position) {
//You will get the position of the Item Clicked over recycler view
//You can handle as per your requirement
}
}
. После этого вы прослушаете событие щелчка на панели повторного просмотра действия.Тогда вы можете справиться с этим соответственно.Если у вас есть дополнительные сомнения, следуйте ссылкам:
https://stackoverflow.com/a/40584425/8331006
https://stackoverflow.com/a/28304164/8331006