首页 > 解决方案 > 再次单击时如何不取消选择单选按钮?

问题描述

我已经成功地实现了凌空的单选按钮。我的 volley 中的示例数据是1, 2, 3. 当我选择单选按钮 1,然后选择单选按钮 2 时,未选中单选按钮 1。这种情况是正常的,但是当我再次选择单选按钮 2 时,单选按钮变为取消选择,我无法再选择它。

这是我放入适配器的代码:

@Override
public void onBindViewHolder(final ViewHolder holder, final int position) {
    SharedPreferences sharedPreferences = context.getSharedPreferences(AppConfig.APP_PUPUKKUJANG_MART, Context.MODE_PRIVATE);
    final String whois = sharedPreferences.getString(AppConfig.USER_WHOIS,null);
    row_index = -1;
    holder.itemView.setTag(service.get(position));
    final ServiceCourier p = service.get(position);
    holder.service.setText(p.getService());
    holder.desc.setText(p.getDescription());
    holder.cost.setText("Rp "+String.format(Locale.US, "%1$,.0f", Double.valueOf(p.getCost())).replace(",","."));
    holder.etd.setText(p.getEtd());
    holder.itemView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

        }
    });
    View.OnClickListener rbClick = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            RadioButton checked_rb = (RadioButton) v;
            if(lastCheckedRB != null){
                ActivityCheckout.updateTextViewIscek("0");
                lastCheckedRB.setChecked(false);
            }
            lastCheckedRB = checked_rb;
            SharedPreferences sharedPreferences = context.getSharedPreferences(AppConfig.APP_, Context.MODE_PRIVATE);
            SharedPreferences.Editor editor = sharedPreferences.edit();
            editor.putString("ongkir_service", p.getService());
            editor.putString("ongkir_description", p.getDescription());
            editor.putString("ongkir_cost", p.getCost());
            editor.putString("ongkir_etd", p.getEtd());
            editor.apply();
            String cost = String.format(Locale.US, "%1$,.0f", Double.valueOf(p.getCost()));
            Double total_order = ActivityCheckout.getTextViewTotal();
            Double tf = Double.valueOf(p.getCost())+total_order;
            ActivityCheckout.updateTextViewIscek("1");
            ActivityCheckout.updateTextView("Rp "+cost.replace(",","."));
            ActivityCheckout.updateTotal_fees("Rp "+String.format(Locale.US, "%1$,.0f", tf).replace(",","."));
        }
    };
    holder.radiobutton.setOnClickListener(rbClick);
}

标签: javaandroidandroid-layoutkotlinradio-button

解决方案


推荐阅读