[英]how to proactively get data from firebase to android
我不想在更改時自動接收來自 firebase 的數據,而是僅在按下按鈕時接收數據。 關於如何調整下面的代碼的任何想法?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
name = (EditText) findViewById(R.id.editTextTextPersonName);
butt = (Button) findViewById(R.id.button);
viet = (TextView) findViewById(R.id.textView_viet);
butt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String var = name.getText().toString();
getdataUser();
}
});
}
private void getdataUser(){
data_user1.child(var).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot data) {
String yy = data.getValue().toString();
viet.setText(yy)
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}
任何想法表示贊賞!
如果你想一次讀取數據並完成它,你不應該使用addValueEventListener()
。 而是按照文檔中的描述使用addListenerForSingleValueEvent()
。 您仍然必須在回調中異步處理結果,但它只會在查詢位置使用數據快照調用一次。
如果您嘗試同步查詢數據庫以立即返回數據,則沒有 API - 您必須使用回調異步處理數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.