توسط
scientific
سلام وقت بخیر
سلام من دو تا ریسایکلرویو تعریف کردم که هر کدوم آیتمهای مخصوص خودشون رو دارن ، و از یک لیوت نمونه و از یک آداپتر برای هر دو استفاده کردم،
حالا برای رویداد کلیک آیتم ها به مشکل بر خوردم
چون طبیعتا پوزیشن آیتم ها در هر دو ریسایکلرویو یکسان هست؛ مثلا پوزیشن آیتم اول ، در هردو ریسایکلرویو صفر هست و وقتی میگم اگر روی آیتم صفر کلیک شد برو به اکتیویتی دوم
برای هر دو ریسایکلرویو همین اتفاق میفته؛
((یعنی وقتی روی اولین آیتم در ریسایکلرویوی اولم کلیک میکنم میره به اکتیویتی دو و وقتی روی اولین آیتم از ریسایکلرویوی دوم هم کلیک میکنم بازم میره به اکتیویتی دو))
راهنماییم کنید ممنون میشم
کلاس آداپتر:
package com.donyaeayandeh.itroducingdonyaeayandehinstitute;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
public class AdapterRecyclerView extends RecyclerView.Adapter<CourseEducationViewHolder> {
List<CourseModel> list;
public AdapterRecyclerView(List<CourseModel> courseModelslist) {
this.list = courseModelslist;
}
@NonNull
@Override
public CourseEducationViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view= LayoutInflater.from(parent.getContext()).inflate(R.layout.course_education_list_item,parent,false);
return new CourseEducationViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull final CourseEducationViewHolder holder, final int position) {
// fill items from List:
holder.course_education_image.setImageResource(list.get(position).getCuorse_education_icon());
holder.course_education_txt.setText(list.get(position).getCourse_education_title());
// Click recyclerView Items:
holder.itemView.setOnClickListener(new View.OnClickListener() {
Intent intent;
@Override
public void onClick(View view) {
Toast.makeText(view.getContext(),"The Item Clicked is: " +holder.getLayoutPosition(),Toast.LENGTH_SHORT).show();
if(position==0){
intent=new Intent(view.getContext(),Cheshmandaz_Dore_Info.class);
view.getContext().startActivity(intent);
}
}
});
}
@Override
public int getItemCount() {
return list.size();
}
}
ممنون میشم جواب بدید
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .