发布到Firestore时使用相同的radioButton值

时间:2018-11-23 01:27:09

标签: android firebase google-cloud-firestore

我的radioButtons中有2个layout。当询问是否有保险时,一个用于yes,另一个用于no。当我单击我的save按钮并将数据发布到firestore时,它同时显示NO INSUREDYES INSURED。我设置代码的方式就是为什么这样设置,但是我想做的是提供一个来源,如果该人单击yesno,那么在firestore中我将拥有{ {1}}或Insured : Yes。我将代码发布到

Insured : No

1 个答案:

答案 0 :(得分:1)

首先,

  

当我单击我的save按钮并将数据发布到firestore

根据您的代码,这没有发生。您应该使用OnClickListener方法来实现您的想法。我建议仔细阅读documentation


第二件事,

希望您正在将RadioGroup用于RadioButton。这样一来,一次不能选择多个RadioButtonHere是实现RadioGroup的方式。


最后一件事,

使用单个键存储布尔值,而不是在RadioButton中为Firestore状态存储多个键值对。试试这个:

if (radioGroup.getCheckedRadioButtonId() == R.id.yesRadioButton){
    myMap.put("isInsured", true);
} else {
    myMap.put("isInsured", false);
}

代替此:

myMap.put(KEY_YES_INSURED, yes_button);
myMap.put(KEY_NO_INSURED, no_button);

如果正确执行了所有上述步骤,则数据库应为RadioButton状态存储一个值。尝试让我们知道是否可行。