我有一个适配器,我使用下面的类
private class ViewHolder {
TextView tvTitle;
CheckBox cbSelection;
CheckBox cbFavourite;
LinearLayout llPassionInterestLayout;
public ViewHolder(View itemView) {
tvTitle = (TextView) itemView.findViewById(R.id.tv_list);
cbSelection = (CheckBox) itemView.findViewById(R.id.cb_selection);
cbFavourite = (CheckBox) itemView.findViewById(R.id.cb_favourite);
llPassionInterestLayout = (LinearLayout) itemView.findViewById(R.id.ll_passion_interest_parent);
}
}
在我的适配器
中 ViewHolder holder;
holder.cbFavourite.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
String key = isChecked ? passion.getKey() : null;
ObjectFactory.getInstance().getNewUserManager(context).setInterestFavourite(key);
当我在视图中通过适配器设置时,我可以看到5个按钮(按钮图像是带有灰色的星形,当按下按钮时按钮图像颜色变为红色)。目前,当我点击每个按钮时,它会变为红色。单击所有按钮后,每个按钮都变为红色..
我的问题是我只需要选择一个按钮,即当我点击按钮1时,它会变为红色。之后,如果我点击按钮2,按钮2必须变为红色,按钮1应该返回灰色
我该怎么做
答案 0 :(得分:0)
如果您希望用户选择多个选项,则应使用复选框。而 单选按钮保证了多个选项中的单个选项。 如果你想要其他按钮应该变成灰色,只有选中应该变成红色请使用RadioButton