【发布时间】:2020-06-25 11:12:58
【问题描述】:
我还在学习使用Android Studio,我很难根据Firebase中的realtimedatabase设置togglebutton的状态,当退出应用程序并再次进入该按钮时,数据库打开时是关闭的, 所以我想问的是,当数据库被激活时,Android上的togglebutton被激活,反之亦然, 谢谢。
公共类 MainActivity 扩展 AppCompatActivity {
TextView teks;
DatabaseReference dref;
String status;
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
teks=(TextView)findViewById(R.id.text1);
Typeface customfont=Typeface.createFromAsset(getAssets(),"font/jd_led3.ttf");
teks.setTypeface(customfont);
teks=(TextView)findViewById(R.id.text1);
dref = FirebaseDatabase.getInstance().getReference();
dref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
status=dataSnapshot.child("Suhu").getValue().toString();
teks.setText(status);
}
@Override
public void onCancelled(DatabaseError error) {
}
});
final ToggleButton button = (ToggleButton) findViewById(R.id.toggleButton);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FirebaseDatabase database = FirebaseDatabase.getInstance();
button.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
DatabaseReference myRef = database.getReference("RELAY1_STATUS");
if(button.isChecked()){
myRef.setValue("ON");
}else{
myRef.setValue("OFF");
}
}
});
final ToggleButton button1 = (ToggleButton) findViewById(R.id.toggleButton1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FirebaseDatabase database = FirebaseDatabase.getInstance();
button1.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
DatabaseReference myRef = database.getReference("RELAY2_STATUS");
if(button1.isChecked()){
myRef.setValue("ON");
}else{
myRef.setValue("OFF");
}
}
});
final ToggleButton button2 = (ToggleButton) findViewById(R.id.toggleButton2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FirebaseDatabase database = FirebaseDatabase.getInstance();
button2.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
DatabaseReference myRef = database.getReference("RELAY3_STATUS");
if(button2.isChecked()){
myRef.setValue("ON");
}else{
myRef.setValue("OFF");
}
}
});
}
}
对不起,如果我的帖子一团糟,我也是第一次使用stackoverflow
【问题讨论】:
标签: android firebase android-studio firebase-realtime-database