2014-11-19 3 views
0

Я хочу передать объект из одной активности в другую при щелчке элемента в представлении Recycler. Теперь вещь, которую я наткнулся на обработку нажмого является:Начальная деятельность с некоторыми `put extra` onClick of recyclerView Item

public static class RecylerViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener { 
    public RecylerViewHolder(final View itemView) { 
     super(itemView); 
     itemView.setOnClickListener(this); 
    } 

    @Override 
    public void onClick(View v) { 
     Context context = itemView.getContext(); 
     Intent intent = new Intent(context, DetailAct.class); 
     context.startActivity(intent); 
    } 
} 

Очевидно, это внутреннегостатического класса. Теперь я должен вызвать объект, который я раздуваю в элементе, который будет передан в следующую активность. И этот объект находится в своем внешнем классе, то есть в onBindViewHolder класса адаптера.
Итак, когда я исследовал, я обнаружил, что мы должны не перечислить переменные внешнего класса из внутреннего статические класс. Я также думал о создании конструктора в своей деятельности для передачи объекта, но тогда я мог ошибаться, потому что я не собираюсь создавать какую-либо деятельность. Теперь я совершенно смущен, как это сделать. Пожалуйста, помогите

ответ

0

В вашем методе onClick() вы можете позвонить по номеру getPosition(), который предоставит вам позицию в вашем наборе данных щелкнутого элемента. С помощью этой информации вы получаете доступ к свойствам вашего конкретного набора данных и передаете их в свою деятельность с помощью метода умывания putExtra().

+0

getPosition() теперь устарел и заменен на getAdapterPosition() –

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

  • Нет связанных вопросов^_^