dataSnapshot自动更新时如何禁用按钮?

时间:2019-01-14 04:43:20

标签: java

我正在Firebase实时数据库中检索儿童数,但是在我用手指触摸之前,按钮内的检索代码运行时发生了意外情况。我需要在哪里更改按钮方法以仅在触摸时启用它?

这是一个按钮代码,用于检索儿童计数。我一直在搜索,不知道问题出在哪里,并且即使没有触摸

,该代码也始终在dataSnapshot更新时运行。
private void checkDuplicate() {
        myButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {   


                if (uid != null) {                        
                    ref.addValueEventListener(new ValueEventListener() {
                        @Override
                        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {


                            for (DataSnapshot u : dataSnapshot.getChildren()) {

                                int allHistoryCount = (int) u.child("history").getChildrenCount();

                                Toast.makeText(MainActivity.this, "retrieve children count under all history: " + allHistoryCount, Toast.LENGTH_SHORT).show();


                            }
                        }

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

                        }
                    });
                }
            }
        });
    }

0 个答案:

没有答案