I have a Recyclerview
and a Cardview
the problem is that I want to open a new activity by selecting from the 6 different items that the list shows, I have obtained the position of the items when I press but when I try to implement a intent
does not work for me from now thanks
Error when placing Intent intent = new Intent(RecyclerAdapter.this, ActividadPrincipal.class);
startActivity(intent);
shows me the error that the method can not solve it and shows startActivity(intent);
in red
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.ViewHolder> {
private String[] titles = {"Asistente",
"Expositor",
"Administrador",
"Galeria",
"Ubicacion",
"Guia rapida"};
private String[] details = {"",
"Item two details", "Item three details",
"Item four details", "Item file details",
"Item six details", "Item seven details",
"Item eight details"};
private int[] images = { R.drawable.defecto,
R.drawable.defecto,
R.drawable.defecto,
R.drawable.defecto,
R.drawable.defecto,
R.drawable.defecto,
R.drawable.defecto,
R.drawable.defecto };
class ViewHolder extends RecyclerView.ViewHolder{
public int currentItem;
public ImageView itemImage;
public TextView itemTitle;
public TextView itemDetail;
public ViewHolder(View itemView) {
super(itemView);
itemImage = (ImageView)itemView.findViewById(R.id.item_image);
itemTitle = (TextView)itemView.findViewById(R.id.item_title);
itemDetail = (TextView)itemView.findViewById(R.id.item_detail);
itemView.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
int position = getAdapterPosition();
Snackbar.make(v, "Click detected on item " + position,
Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View v = LayoutInflater.from(viewGroup.getContext())
.inflate(R.layout.card_layout, viewGroup, false);
ViewHolder viewHolder = new ViewHolder(v);
return viewHolder;
}
@Override
public void onBindViewHolder(ViewHolder viewHolder, int i) {
viewHolder.itemTitle.setText(titles[i]);
viewHolder.itemDetail.setText(details[i]);
viewHolder.itemImage.setImageResource(images[i]);
}
@Override
public int getItemCount() {
return titles.length;
}
}