单击2图像按钮时,更新Firebase实时数据库中的值时出现问题。这是一个调查应用程序,我正在创建。因此,不需要在应用程序本身上检索和显示数据。
按钮正在工作,它显示在firebase中的数据。不幸的是,无论我点击了多少次按钮,这两个按钮的值都只显示为1。它不会在数据库中更新自己。
private int clickCount1 = 0;
private int clickCount2 = 0;
private DatabaseReference mDatabase;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Firebase Database
mDatabase = FirebaseDatabase.getInstance().getReference();
likebutton = findViewById(R.id.imageButton11);
downbutton = findViewById(R.id.imageButton10);
//Like Button Action
likebutton.setOnClickListener(v -> {
incrementClickCount1();
saveClickCountToDatabase1();
animationView1.playAnimation();
Intent intent = new Intent(MainActivity.this, Landscape.class);
startActivity(intent);
finish();
});
//Down Button Action
downbutton.setOnClickListener(v -> {
incrementClickCount2();
saveClickCountToDatabase2();
animationView2.playAnimation();
Intent intent = new Intent(MainActivity.this, NotifActivity.class);
startActivity(intent);
finish();
});
}
private void incrementClickCount1() {
clickCount1++;
}
private void incrementClickCount2() {
clickCount2++;
}
private void saveClickCountToDatabase1(){
mDatabase.child("FeedBack").child("Likes").setValue(clickCount1);
}
private void saveClickCountToDatabase2(){
mDatabase.child("FeedBack").child("Dislikes").setValue(clickCount2);
}
}
1条答案
按热度按时间8aqjt8rx1#
如果要递增数据库中的计数器,请使用其原子递增操作。对于你的结构,看起来像这样: