【问题标题】:Get second Onclicklistener values获取第二个 Onclicklistener 值
【发布时间】:2020-06-01 19:11:17
【问题描述】:

我在 firebase 数据库中有字符串值 我想得到这个字符串 在 onClick 中,我为显示值进行了祝酒,但在第二次点击时会祝酒

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_souslistecuisine);
    cuisinecomplet=(ImageView)findViewById(R.id.cuisinecomplett);

    FirebaseDatabase database= FirebaseDatabase.getInstance();
    DatabaseReference myRef=database.getReference("Produit");
    DatabaseReference key=myRef.child("Cuisine");
    DatabaseReference text=key.child("cuisine complet");
    text1=text.child("text1");
    text1.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            txt=dataSnapshot.getValue(String.class);
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });



}
public void complet(View view) {

    Toast.makeText(souslistecuisine.this, txt, Toast.LENGTH_LONG).show();


}

我尝试将text1.addValueEventListener(new ValueEventListener()) 放入Onclick 方法但结果相同

【问题讨论】:

    标签: android string firebase-realtime-database onclick getvalue


    【解决方案1】:

    在您已经收到来自Firebase 的字符串值后,只需添加Toast,因为Firebase 回调在后台线程中运行并需要时间来响应。

    text1.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            txt=dataSnapshot.getValue(String.class);
            Toast.makeText(souslistecuisine.this, txt, Toast.LENGTH_LONG).show();
        }
    
        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
    
        }
    });
    

    【讨论】:

    • 谢谢,但我放了吐司只是为了测试,但真的在点击时我想通过 txt 的值编辑编辑文本,我不知道为什么它在第二次点击时起作用?
    • @OuertaniSaiid 所以问题是第一次点击按钮没有效果,第二次显示吐司对吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    相关资源
    最近更新 更多