繁体   English   中英

单击项目时,Recyclerview onbindview 无法正常工作

[英]Recyclerview onbindview don't work correct when Click on item

我尝试更新列表项重量代码工作正常

@NonNull
    @Override
    public viewlistx onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {

        View xd = getLayoutInflater().inflate(R.layout.lay_yesno_list,parent,false);

        return new viewlistx(xd);
    }

    @Override
    public void onBindViewHolder(@NonNull  viewlistx holder, final int position) {


        btyesi = holder.btyes;


        holder.btyes.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Log.w("click","pos: " + position);
                LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) btyesi.getLayoutParams();
                params.weight = 2.0f;
                btyesi.setLayoutParams(params);
            }
        });




    }

    @Override
    public int getItemCount() {
        return 4;
    }

    public class viewlistx extends RecyclerView.ViewHolder{


        private final TextView btyes;

        public viewlistx(@NonNull View itemView) {
            super(itemView);
            btyes = itemView.findViewById(R.id.yesbtx);
        }
    }


}

但问题是当我单击一个项目时,它会更改下一个项目的重量

例如 pos, 0 click pos 1 item value change 或 pos 1 clicked pos 2 item value change

我做错了什么?

找到解决该问题的方法,列表上的使用值 animation 必须更改

holder

final holder

它的工作正常

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM