Android RecyclerView with CardView | Creating Adapter + OnItemClickListener - Android Studio
Source Code
#recyclerview_adapter.class
public class recyclerview_adapter extends RecyclerView.Adapter<recyclerview_adapter.ViewHolder> {
private ArrayList<recyclerview_list> recyclerview_list;
private Context context;
public recyclerview_adapter(ArrayList<com.aloul.recyclerviewtutorial.recyclerview_list> recyclerview_list, Context context) {
this.recyclerview_list = recyclerview_list;
this.context = context;
}
@NonNull
@Override
public recyclerview_adapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyclerview_card,parent,false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull recyclerview_adapter.ViewHolder holder, int position) {
holder.imageView.setImageResource(recyclerview_list.get(position).getImage());
holder.textView.setText(recyclerview_list.get(position).getText());
holder.cardView.setOnClickListener(e->{
Intent intent = new Intent(context,pages.class);
intent.putExtra("id",position);
context.startActivity(intent);
});
}
@Override
public int getItemCount() {
return recyclerview_list.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
CardView cardView;
ImageView imageView;
TextView textView;
public ViewHolder(@NonNull View itemView) {
super(itemView);
cardView = itemView.findViewById(R.id.cardView);
imageView = itemView.findViewById(R.id.imageView);
textView = itemView.findViewById(R.id.textView);
}
}
}
///////////////////////////////////////////////////////////
#main
public class main extends AppCompatActivity {
ArrayList<recyclerview_list> recyclerview_list;
RecyclerView recyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView = findViewById(R.id.recyclerView);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new GridLayoutManager(this,2));
recyclerview_list = new ArrayList<recyclerview_list>();
recyclerview_list.add(new recyclerview_list(R.drawable.english,"English"));
recyclerview_list.add(new recyclerview_list(R.drawable.art,"Art"));
recyclerview_list.add(new recyclerview_list(R.drawable.sport,"Sport"));
recyclerview_list.add(new recyclerview_list(R.drawable.history,"History"));
recyclerview_list.add(new recyclerview_list(R.drawable.geography,"Geography"));
recyclerview_list.add(new recyclerview_list(R.drawable.math,"Math"));
recyclerview_list.add(new recyclerview_list(R.drawable.tech,"Tech"));
recyclerview_list.add(new recyclerview_list(R.drawable.science,"Science"));
recyclerview_adapter recyclerview_adapter = new recyclerview_adapter(recyclerview_list,this);
recyclerView.setAdapter(recyclerview_adapter);
}
}
///////////////////////////////////////////////////////////
#pages
public class pages extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pages);
int pageId = getIntent().getIntExtra("id",0);
TextView textPageId = findViewById(R.id.textPageId);
textPageId.setText("PAGE : " + pageId);
}
}
Watch This Video
《《《 Links 》》》
To Subscribe to our YouTube Channel
Source Code + Project
Comments
Post a Comment