2015-10-20 2 views
0

Android Recycler View OnClick Событие не работает в коде. Я могу видеть Recycler view grid, но когда я нажимаю на один элемент, ничего не происходит.Как добавить событие onClick в элементы просмотра Android-ресайклеров?

Вот мой код:

public class StaggeredGridAdapter extends RecyclerView.Adapter<StaggeredGridAdapter.StaggeredGridView> { 

private Context context; 
private List<Warehouse> warehouses = new ArrayList<Warehouse>(); 
int size; 
public StaggeredGridAdapter(Context context) { 
    this.context = context; 
} 

public void addItems(List<Warehouse> response) { 
    size = response.size(); 
    warehouses = response; 
} 

@Override 
public StaggeredGridView onCreateViewHolder(ViewGroup parent, int viewType) { 
    View layoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.grid_item, parent, false); 
    StaggeredGridView staggeredGridView = new StaggeredGridView(layoutView); 
    return staggeredGridView; 
} 

@Override 
public void onBindViewHolder(StaggeredGridView holder, int position) { 
    holder.textView.setText(warehouses.get(position).getFace()); 

} 

@Override 
public int getItemCount() { 
    return size; 
} 

class StaggeredGridView extends RecyclerView.ViewHolder implements View.OnClickListener { 
    TextView textView; 

    public StaggeredGridView(View itemView) { 
     super(itemView); 

     textView = (TextView) itemView.findViewById(R.id.img_name); 

    } 

    @Override 
    public void onClick(View v) { 
     Toast.makeText(context, "clicked", Toast.LENGTH_SHORT).show(); 

    } 
} 

}

Я унаследовал внутренний класс т.е. StaggeredGridView с Views.OnClickListner и отлаживать точка не доходит до StaggeredGridView.OnClick метода. В ADB logs исключений нет.

Что я здесь делаю неправильно?

+0

Попробуйте http://stackoverflow.com/questions/24471109/recyclerview -по щелчку – KishuDroid

ответ

1

Вы должны сделать эту простую вещь, и она начнет работать с вами

itemView.setOnClickListener(this) 
0

// добавить этот

public StaggeredGridView(View itemView) { 
     super(itemView); 

     textView = (TextView) itemView.findViewById(R.id.img_name); 
     staggeredGridView.setOnClickListener(this) 

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