如何更改切换按钮的状态 只有在我点击了某个对话框的确定之后,如果我点击了取消切换按钮没有改变,我的问题是切换按钮总是切换,那么之前有没有需要做的例子或者具体的实现呢?
toggle1 = (ToggleButton) findViewById(R.id.filterButton);
// toggle1.setChecked(getDefaults("Toggle1S",this));
// setDefaults("Toggle1S", toggle1.isChecked(), this);
toggle1.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
if (toggle1.isChecked()) {
on.start();
Using();
if(Use.equals("1"))
{//Wifi Function
Toast.makeText(getApplicationContext(), "Filter ON sent using Wifi", Toast.LENGTH_SHORT).show();
new MyAsyncTask().execute("filter_st","ON");
}
else{
String temp = "Are you want to turn Filter ON using GSM";
callCheck(SMStitle,temp);
sm.sendTextMessage(number, null, messages[0], null, null);
Toast.makeText(getApplicationContext(), "Filter ON sent using GSM number"+number, Toast.LENGTH_SHORT).show();
}
public void callCheck(String c,String d)
{
// Creating alert Dialog with one Button
AlertDialog alertDialog1 = new AlertDialog.Builder(
fishtank.this).create();
// Setting Dialog Title
alertDialog1.setTitle(c);
// Setting Dialog Message
alertDialog1.setMessage(d);
// Setting OK Button
alertDialog1.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//Toast.makeText(getApplicationContext(),"You clicked on OK", Toast.LENGTH_SHORT).show();
}
});
alertDialog1.setButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
// Showing Alert Message
alertDialog1.show();
}
据
我了解,您的问题似乎很容易解决,请考虑此代码
1-
alertDialog1.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
toggelBt.toggle();
}
});
2- 和其他方式,您可以在运行时将状态保存在布尔值中 每次调用中的变量 切换按钮 点击方法(使用共享首选项而不是布尔值来保存并在下次应用程序启动时使用) 然后
Boolean CheckState
...
alertDialog1.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
if(checkState)//should set uncheck now
toggelBt.setChecked(false);
else
toggelBt.setChecked(true);
}
});
跳到有用的:)