首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ToggleButton State OnClick

ToggleButton State OnClick
EN

Stack Overflow用户
提问于 2014-01-05 11:26:41
回答 1查看 1.8K关注 0票数 1

仅在单击对话框上的“确定”之后,如何更改toggleButton的状态?如果单击“取消”toggleButton未更改,则问题是始终切换toggleButton,因此是否有需要在此之前进行的示例或特定实现?

代码语言:javascript
运行
复制
 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();
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-05 11:50:27

据我所知,您的问题似乎很容易解决,请考虑以下代码

1-

代码语言:javascript
运行
复制
alertDialog1.setButton("OK", new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface dialog, int which) {

                       toggelBt.toggle();
                }
            });

2-另一方面,您可以在每个调用sharedPreference Onclick方法中的布尔变量中保存运行时的状态(然后在下一个应用程序启动时使用布尔值来保存和使用)。

代码语言:javascript
运行
复制
 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);
                }
            });

跳得有用:)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20932991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档