在自定义适配器中使用 OnclickListener Class

Use OnclickListener In custom Adapter Class

我必须在列表视图的自定义适配器 class 中使用 onclick 侦听器。但是每次当我尝试单击它时它都会使应用程序崩溃。

这是适配器 class::-

public class ClassAdapter extends BaseAdapter{

    ArrayList<Class_Beans> feedList;
    LayoutInflater inflater;
    Activity activity;

    Context context;
    ImageLoader imageloader;



    public ClassAdapter(ArrayList<Class_Beans> feedList, Activity activity) {
        // TODO Auto-generated constructor stub
        super();
        this.feedList = feedList;
        this.activity = activity;
        inflater = (LayoutInflater )activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        imageloader = ImageLoader.getInstance();
        imageloader.init(ImageLoaderConfiguration.createDefault(activity));
    }

    ********unimplemented methods calling********


    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        View vi = convertView;
        ViewHolder holder;

        if(convertView==null)
            //convertView = inflater.inflate(R.layout.ozone_item, null);

            convertView = inflater.inflate(R.layout.ozone_item, null);
        holder = new ViewHolder();

        holder.tvDate = (TextView)convertView.findViewById(R.id.class_name);
        holder.tvContent = (TextView)convertView.findViewById(R.id.ozone_content);
        holder.tvUser = (TextView)convertView.findViewById(R.id.class_date);
        holder.image_user_image = (ImageView)convertView.findViewById(R.id.class_user_image);
        holder.postImage = (ImageView)convertView.findViewById(R.id.class_post_image);
        holder.replyEdittext = (EditText)convertView.findViewById(R.id.class_writesomething);



        holder.tvUser.setText(feedList.get(position).getName());
        holder.tvDate.setText(feedList.get(position).getCreated_date());
        holder.tvContent.setText(feedList.get(position).getContent());

        imageloader.displayImage(feedList.get(position).getUser_image(), holder.image_user_image);

         holder.replyEdittext.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                    Intent replyClassIntent =  new Intent(context,Reply_Class.class);

                    activity.startActivity(replyOzoneIntent);
            }
        });

        return convertView;
    }

    public class ViewHolder {
        public EditText replyEdittext;
        public ImageView image_user_image;
        public ImageView postImage;
        TextView tvContent , tvUser, tvDate;
    }

请告诉我我在这里犯了什么错误。

使用 Activity 而不是上下文因为你的 Context 是空的,你没有在构造函数中给 Context 赋值,但是你给 Activity[= 赋值15=]

holder.replyEdittext.setOnClickListener(new View.OnClickListener()
{
   @Override
   public void onClick(View v) 
    {
      Intent replyClassIntent =  new Intent(activity,Reply_Class.class); 
      activity.startActivity(replyOzoneIntent);
    }
 });