【发布时间】:2018-04-16 18:12:41
【问题描述】:
我是 Android 和 Firebase 编程的新手。我只是在构建一个小应用程序,到目前为止它运行良好。但是当涉及到 Firebase 连接时,我正在苦苦挣扎。 我遵循了所有的基本步骤并尝试了很多但无法弄清楚。
所以我的问题:我有一个数据库,它存储 ID: ID --> 12345, 23456, ... ,这些 ID 有多个孩子(实际上是其他 ID: ID --> 23456 --> 23456-ValueA , 23456-ValueB, ...)。我想做的事:
- 如果单击按钮,应用程序会检查先前输入的字符串是否是 ID 的子字符串,因此如果 enteredstring 匹配任何 IDx(例如用户输入 ValueX("23456"),它会检查ID'的任何孩子是否等于23456)
- 如果是,它应该检查另一个先前输入的字符串是否是此 IDx 的子字符串(用户输入 ValueY("88888") 检查 23456 Value-A("88888") 是否等于 ValueY)。
- 如果这是真的,那么它应该显示 Value-B("Ape") 的值
我附上了数据库图片。link to the image
感谢您的帮助,非常感谢 干杯
...
public class trackid extends AppCompatActivity {
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference IDRef = rootRef.child("ID");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_trackid);
// findViewById
Button ButtondisplayB = (Button) findViewById(R.id.ButtondisplayB);
EditText ValueX = (EditText) findViewById(R.id.ValueX);
EditText ValueY = (EditText) findViewById(R.id.ValueY);
// Capture if button is clicked
ButtondisplayB.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// HERES WHERE MY QUESTIONS START:
// if ValueX.getText().toString() is in IDRef.child()
//if true: ValueY.getText().toString() equals IDRef.child(ValueX).child(Value-A)
//if true: display IDRef.child(Value-B)
【问题讨论】:
标签: android firebase firebase-realtime-database