设为首页 加入收藏

TOP

SharedPreferences实现记住密码功能(二)
2017-10-13 09:57:13 】 浏览:4617
Tags:SharedPreferences 实现 记住 密码 功能
id
="@+id/passWord" android:layout_height="wrap_content" android:inputType="textPassword" android:textSize="20sp" android:textColor="@color/red" android:gravity="center" /> </TableRow> <TableLayout android:layout_height="wrap_content" android:stretchColumns="0"> <TableRow> <CheckBox android:id="@+id/saveSelect" android:background="@color/red" android:layout_gravity="end"/> <TextView android:layout_height="wrap_content" android:text="@string/saveSelect" android:textSize="20sp" android:textColor="@color/white" android:gravity="center" android:layout_gravity="bottom"/> </TableRow> <TableRow> <Button android:layout_height="wrap_content" android:id="@+id/login" android:gravity="center" android:layout_span="2" android:text="@string/login" android:textSize="25sp" android:textColor="@color/red" android:background="@drawable/black_bt"/> </TableRow> </TableLayout> </TableLayout>

 

Login.java

public class Login extends AppCompatActivity {

    private SharedPreferences spf;
    private SharedPreferences.Editor spfe;

    private int num = 0;
    private EditText account = null;
    private EditText passWord = null;
    private CheckBox saveSelect = null;
    private Button login = null ;

    @Override
    protected void onCreate(Bundle saveInstanceState){

        //加载布局
        super.onCreate(saveInstanceState);
        setContentView(R.layout.login);

        //初始化控件
        account = (EditText)findViewById(R.id.account);
        passWord = (EditText)findViewById(R.id.passWord);
        saveSelect = (CheckBox)findViewById(R.id.saveSelect);
        login = (Button)findViewById(R.id.login);

        //使用Context的getSharedPreferences(String name,int mode)方法得到SharedPreferences对象;
        spf = getSharedPreferences("data", Context.MODE_PRIVATE);
        //使用SharedPreferences对象的edit()方法得到 SharedPreferences.Editor 的对象;
        spfe = spf.edit();

        //复选框是否被选中,若为选中状态,则保存过账户,要恢复数据
        if(spf.getBoolean("isSelect",false)){//选中标志,默认值为false
            String acc = spf.getString("account","");
            String pas = spf.getString("passWord","");
            account.setText(acc);
            passWord.setText(pas);
            saveSelect.setChecked(true);
        }

        //设置登录按钮监听事件
        login.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //确认帐号密码
                if(account.getText().toString().equals("visen") && passWord.getText().toString().equals("dsy402645063!")){

                    //复选框是否被勾选,若被勾选,则需要保存账户后登录;否则直接登录且不保存账户
                    if(saveSelect.isChecked()){
                        saveDate();
                    }else {
                        spfe.clear();
                        spfe.commit();
                    }
                    
                    //页面跳转
                    Intent intent = new Intent(Login.this,MainActivity.class);
                    startActivity(intent);
                    finish();
                }else {//账户或密码错误
                    Toast.makeText(Login.this, "account or password is invalid", Toast.LENGTH_SHORT).show();
                }
            }
        });

    }

    public voi
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Android安全开发之浅谈密钥硬编码 下一篇Eclipse调试Android App若选择“U..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目