Sie können dies mit Ihrem Viewholder in Ihrer RecyclerAdapter-Klasse erreichen.
//this goes in your recyclerView adapter....
/**
* View holder for workouts
*/
public static class MyViewHolder extends RecyclerView.ViewHolder {
// each data item is just a string in this case
public TextView mTitleView;
public TextView mTView1;
public View homeView;
public MyViewHolder(View itemLayoutView) {
super(itemLayoutView);
this.homeView = itemLayoutView;
this.mTitleView = (TextView) itemLayoutView.findViewById(R.id.workoutItemTitleText);
this.mTView1 = (TextView) itemLayoutView.findViewById(R.id.workoutItemWorkoutSets);
homeView.setOnClickListener(new ON)
}
}
//other code.....
@Override
public void onBindViewHolder(WorkoutViewHolder viewHolder, int position) {
viewHolder.mTView1.setText("");
viewHolder.mTitleView.setText("");
//pass the position to the view in the onclick listener
viewHolder.homeView.setId(position);
viewHolder.homeView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//this list item has been clicked, do something. maybe use an interface or something to notify your activity/fragment.
}
});
}
//the rest of your code.....
Im onBindViewHolder Methode können Sie Ihre Animation Logik für diese Ansicht und Pass, die auf Ihre Aktivität oder ein Fragment Onclick implementieren. Erstellen Sie einfach eine benutzerdefinierte Schnittstelle für Ihren Recyclerview-Adapter und erstellen Sie eine Methode wie setMyOnItemClickListener(new MyOnItemClickListener)
. Wenn ein Objekt angeklickt wird, benachrichtigen Sie Ihre benutzerdefinierte Oberfläche und führen Sie eine Aktion mit dem Klick aus.
Danke Nathan, ich werde das so schnell wie möglich untersuchen. Das scheint weniger umständlich und aufgebläht zu sein, also probier ich das mal aus und lasse es kurz wissen =) – Ted
Funktioniert wie ein Zauber =) – Ted
@Ted froh das zu hören! –