描述:
当我输入帐号密码---点击记住密码--进入程序主页面,当我点退出会有一个dialog提示上面有一个选项(清除帐号密码信息)-我点了退出程序,当我在进入程序的时候上次记住的帐号密码还是存在,如何在点击清除帐号密码后进入程序从新输入的情况?
代码:Dialog dialog = new AlertDialog.Builder(this)
         .setView(dialogLayout)
//                .setMessage(confirmMsg == null ? getString(R.string.exitconfirm) : confirmMsg)
                .setTitle(getString(R.string.remind))
                .setPositiveButton(getString(R.string.ok), new DialogInterface.OnClickListener() {                    public void onClick(DialogInterface dialog, int which) {
                     isforced = (true == isForcedCheck.isChecked()?false:true);
                         if(isLogCleaned.isChecked()){
                             //this.deleteDatabase("TB_USERLOGIN"); 
                             dropTable();
                             //dialog.dismiss();
                             
                         }
                        dialog.dismiss();
                        disconnectFromServer(true,false);
                    }
                                        private void dropTable() {
                        //mSQLiteDatabase.execSQL("DELETE_DATA");
                        //mSQLiteDatabase.close();
                        //System.exit(0);
                        disconnectFromServer(true,false);
                        //return;
                        
                        
                        // TODO Auto-generated method stub
                        
                    }
                    
                    /*   
                    private void deleteDatabase(String string) {
                        
                        SQLiteDatabase db = mSQLiteDatabase.getWritableDatabase();        //获得数据库对象
                        db.delete("TB_USERLOGIN",null, null);
                        db.close();
                        // TODO Auto-generated method stub
                        
                    }
                    
                   
                  /*  
                    public void DeleteTable()
                    {
                        mSQLiteDatabase.execSQL("TB_USERLOGIN " + tab1);
                        this.finish();
                    }
                    */
                    
                })

解决方案 »

  1.   

    谁能给点指示?   用的是SQLlite 存储的。
      

  2.   

    个人思路:在“在清除账户记录”checkbox上绑定将监听器,实时获取当前监听器的状态(是否选中)!你的chekbox默认应该是选中!监听器当获取当前的状态改变时候,判断checkbox是否选择“清楚账户记录”(保存密码的话,SharedPreferences似乎更合适)
    思考:1.checkbox的状态的保存
          2.在登录成功的监控器中里面,设置保存"账户"到你用的数据库中(比如通过SharePreferences保存到.xml文件)
          3.在主函数中onCreate(){}中通过获取保存chckBox状态,选择是否保存账户信息//给checkBox设置监控器
    checkBox1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){
             @Override
             public void onCheckedChanged(CompoundButton buttonView,
             boolean isChecked) {
             // TODO Auto-generated method stub 
             if(!checkBox1.isChecked()){
    //相应的操作,保存checkBox状态
             }
         思路比较乱,希望有帮助!   
             }
            }
    );
      

  3.   


    谢谢  我已经搞定利用SQLlite存储 首先先得到一个表的记录,然后点击checkBox事件执行一个方法   传一个值给SQLlite在执行一个方法,在方法里面执行SQL语句来删除表记录来操作!
      

  4.   

    何必麻烦。用boolean确定是否保存,否就直接在帐号密码那用setText("")就行了哈