Android checkbox.isChecked 无效

Android checkbox.isChecked is not working

我正在尝试创建一个喜欢和不喜欢的按钮。我使用复选框来做到这一点。

在 XML 代码中,我有两个复选框,一个叫 like,另一个叫 dislike

我正在尝试在喜欢和不喜欢按钮之间切换。这样他们就不能同时开机

public void onLike(View view) {
        if (dislike.isChecked()) {
            dislike.setChecked(false);
        }
        Toast.makeText(this,"liked",Toast.LENGTH_SHORT).show();
    }

我遇到的问题是设置 setChecked(true) 没有做任何事情。

有关更多上下文,复选框的 XML 是在具有卡片视图的片段中定义的。卡片视图中的每个项目都有复选框。

我在主activity中初始化复选框的方式如下:-

View cardViewLayout = getLayoutInflater().inflate(R.layout.text_row_item,null);
        like = (CheckBox) cardViewLayout.findViewById(R.id.like);
        dislike = (CheckBox) cardViewLayout.findViewById(R.id.dislike);

有什么想法吗?

好的,我已经找到解决办法了。由于我使用的是带有自定义适配器的回收器视图,因此我需要通过接口绑定 onClick 侦听器。

这里有一个 link 到另一个 post,它将显示在适配器中实现点击侦听器的必要步骤: