آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

رویداد آن کلیک برای آیتم های ریسایکلرویو

gholipour  7 سال پیش  7 سال پیش
0 0

سلام دوستان من میخام با کلیک بر روی آیتم های ریسایکلرم یک اکتیویتی اجرا بشه اما متاسفانه ارور میده و مشکلشم اینجاست که میگه خارج از اکتیویتی دارید یک اکتیویتی رو صدا میزنید. حالا من نمیدونم روش درستش کدومه . میشه راهنمایی کنید . ممنون میشم.

public class MyRecyclerAdapterTab1 extends RecyclerView.Adapter <MyRecyclerAdapterTab1.MyViewHolder>  {
private Context context;
private List<ItemList> days;
public MyRecyclerAdapterTab1(Context context, List<ItemList> days) {
this.context = context;
this.days = days;
}

@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.my_recyclerview_tab1,parent ,false );
return new MyViewHolder(view) ;
}
@Override
public void onBindViewHolder(@NonNull final MyViewHolder holder, int position) {
holder.day.setText(days.get(position).getName());
holder.itemView.setOnClickListener(holder) ;
}

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

class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
private TextView day;

public MyViewHolder(View itemView) {
super(itemView);
day =(TextView)itemView.findViewById(R.id.day) ;
}

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


}
}
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
namdar79  7 سال پیش
0 0

شما لطف کنید و متد onclickListener رو در متد onBind ,Adapter بنویسید

 holder.itemView.setOnClickListener(new OnClickListener  {
@Override
public void onClick(View {
context.startActivity(new Intent(context,InformationActivity.class) ) ;
});
0 0
من هم همین کارو کردم دوست عزیز. holder.itemView.setOnClickListener(holder) و بعد برای اینکه کلاس جدا داشته باشم اینکارو کردم . البته همینکاری که شما گفتیدم انجام دادم بازم همون ارور میده یعنی برنامه استپ میشه (7 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .