Callback method in list Adapter doesn't work

前端 未结 2 1042
南笙
南笙 2021-01-29 08:52

I used a callback methods I was guided to use in a previous question. It doesn\'t seem to work. The onClick() method is not called. callback methods seem to be a very broad conc

2条回答
  •  滥情空心
    2021-01-29 09:21

    That's because you are missing @Override annotation inside your RowViewHolder's onClick method.

    It should look like below.

    class RowViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
    
            TextView viewName;
            ImageView viewFlag;
            LinearLayout countryEntry;
    
            RowViewHolder(View view) {
    
                super(view);
                viewName = view.findViewById(R.id.name);
                viewFlag = view.findViewById(R.id.flag);
                countryEntry = view.findViewById(R.id.rowId);
                view.setOnClickListener(this);
            }
    
            @Override
            public void onClick(View view) {
                if (mClickListener != null) mClickListener.onItemClick(view, getAdapterPosition());
                ListActivity.position = getAdapterPosition();
                final Country currentCountry = countriesList.get(getAdapterPosition());
                listActivity.setCurrentCountry(currentCountry);
    
            }
        }
    
    

提交回复
热议问题