android - 如何通过firebase实时数据库在android studio的textview中指定其中一个来从一组数据中检索特定数据?
问题描述
我想通过在 textview 中指定其兄弟的数据来检索数据,请有人帮助我如何处理它,下面提供了代码和 JSON 树。我已经通过直接指定适用于单次检索的多组数据的数据路径来检索我失败了,我试图将 TextView 传递给 stingview 并在我也失败的路径中调用它。
public class smartphone extends AppCompatActivity {
Button fetch,accept;
TextView content;
EditText one,two;
DatabaseReference rootRef,demoRef;
LinearLayout layout1,layout2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_smartphone);
getSupportActionBar().setTitle("Smartphone details");
final LinearLayout layout1 = (LinearLayout) findViewById(R.id.layout1);
layout1.setVisibility(View.VISIBLE);
final LinearLayout layout2 = (LinearLayout) findViewById(R.id.layout2);
layout2.setVisibility(View.GONE);
fetch=(Button) findViewById(R.id.fetchDocument);
fetch.setVisibility(View.VISIBLE);
accept=(Button)findViewById(R.id.button2);
content=(TextView) findViewById(R.id.content);
one=(EditText) findViewById(R.id.one);
two=(EditText) findViewById(R.id.two);
String brand="";
rootRef = FirebaseDatabase.getInstance().getReference();
demoRef = rootRef.child("mobile/samsung/j7/");
demoref1=demoRef.getRoot().equalTo(one.getText().toString());
fetch.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = one.getText().toString().trim();
String model = two.getText().toString().trim();
if (TextUtils.isEmpty(name)&&TextUtils.isEmpty(model)) {
Toast.makeText(smartphone.this, "Please Enter Make and Model", Toast.LENGTH_SHORT).show();
return;
}
demoRef.child("price").addListenerForSingleValueEvent(new ValueEventListener() {
//demoref1.orderByChild("price").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//progressBar.setVisibility(View.VISIBLE);
String value = dataSnapshot.getValue(String.class);
content.setText(value);
fetch.setVisibility(View.GONE);
layout2.setVisibility(View.VISIBLE);
}
});
}
});
accept.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(getApplicationContext(), location.class));
}
});
}
}
解决方案
推荐阅读
- laravel - Laravel 邮件未使用配置的邮件主机
- python-textfsm - TextFSM:从不同的行中提取数据
- c# - 如何从 C# 中的文本文件中删除“输入”?
- regex - 最后一个'-'之后的正则表达式匹配文本
- python - 用于迁移学习的 TensorFlow hub 与 tf.keras.applications
- c# - 滑块的 DragAndDropToOffset 导致滑块位置不正确
- c - 资源编辑器适用于 C/C++ prg 但不适用于 Melander 的 ResEdit
- php - uagent_info 有一个不推荐使用的构造函数”
- unicode - 如何在 Julia 中表示任何 unicode 字符?
- matlab - 在 MATLAB 中通过 SVD 从正弦图重建图像