您的位置:首页 > 其它

MiniTwitter记住密码功能实现

2015-07-18 22:00 369 查看
MiniTwitter记住密码功能实现



1.aivity_main.xml

    <LinearLayout

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_margin="10dp"

        android:orientation="horizontal">

     <TextView

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_weight="1"

         android:layout_marginRight="5dp"

         android:text="@string/tv_username"

      />

  

     <EditText

         android:id="@+id/et_username"

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_weight="3"

     />

     </LinearLayout〉

 

     <LinearLayout

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_margin="10dp"

        android:orientation="horizontal">

     <TextView

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_weight="1"

         android:layout_marginRight="5dp"

         android:text="@string/tv_password"

      /> 

     <EditText

         android:id="@+id/et_password"

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_weight="3"

         android:password="true"

     />

     </LinearLayout〉

     <LinearLayout

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_marginTop="5dp"

         android:layout_marginRight="10dp"

         android:layout_marginLeft="10dp"

         android:orientation="horizontal">

     <CheckBox

         android:id:="@+id/cb_keeppsd"

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_weight="1"

         android:text="@string/tv_password"

         android:checked="true"

      /> 

     <Button

         android:id="@+id/btn_login"

         android:layout_width="wrap_content"

         android:layout_height="wrap_content"

         android:layout_weight="3"

         android:layout_marginLeft="20dp"

         android:text="@string/btn_login" />

     </LinearLayout〉

</LinearLayout〉

2.MainActivity

public class MainActivity extends Activity {  

private EditText etUsername;  

private EditText etPassword;  

private CheckBox rememberpassword; 

private Button btnLogin; 

  

// 声明一个SharedPreferences用于保存数据  

private SharedPreferences setting = null;  

private static final String PREFS_NAME = "NamePwd";  

    @Override  

    protected void onCreate(Bundle savedInstanceState) {  

        super.onCreate(savedInstanceState);   

        setContentView(R.layout.activity_main);  

        findView();

        setListener() ;  

        getData();  

    }  

 private void findView() {  

        metUsername=(EditText)findViewById(R.id.et_Username);  

        metPassword=(EditText)findViewById(R.id.et_Password);  

        mCBKeepPsd=(CheckBox)findViewById(R.id.cb_keeppsd);  

        mbtnLogin=(Button)findViewById(R.id.btn_Login);

}

    private void setListener() {  

        // 为登录按钮绑定事件  

        btnLogin.setOnClickListener(new OnClickListener() {   

            @Override  

            public void onClick(View arg0) {  

               

                // 判断用户名和密码  

                if ("admin".equals(mEtUserName.getText().tostring())

                     &&"123456".equals(mEtPassWord.getText()

                                              .toString()))  

                {  

                    // 判断复选框是否选中  

                      if (mcbKeepPsd.isChecked())  

                    {  

                        setting = getSharedPreferences(PREFS_NAME,

                                           MODE_PRIVATE);  

                        // 得到Editor对象  

                        Editor edit =  mspSettings.edit();  

                        // 记录保存标记  

                        edit.putBoolean("iskeep", true);  

                        // 记录用户名  

                        edit.putString("username",metusername.getText()

                                  .toString());  

                        // 记录密码  

                        edit.putString("password",metPassword.getText()

                                    .toString());  

                        edit.commit(); 

                    }  

                      

                    else   

                    {                                                         

                   mspSettings=getSharedPreferences(PREFS_NAME,

                                           MODE_PRIVATE);  

                        // 得到Editor对象  

                        Editor edit = mspSettings.edit();  

                        // 记录保存标记  

                        edit.putBoolean("iskeep", false);  

                        // 记录用户名  

                        edit.putString("username", "");  

                        // 记录密码  

                        edit.putString("password", "");  

                        edit.commit();   

                    }  

                    */  

                      

                    // 跳转到首页  

                    Intent intent = new Intent(MainActivitythis,  

                            successActivity.class);  

                    startActivity(intent);  

                    finish();  

                }   

                }  

                else   

                {  

                    // 显示错误提示  

                    Toast.makeText(getApplicationContext(), "用户名或密码错误",  

                            Toast.LENGTH_SHORT).show();  

                }  

                  

            }  

        });  

    }  

  

    @Override  

    protected void onResume() {  

        // 在界面显示数据之前得到之前存储的数据  

        super.onResume();  

        getData();  

    }  

    private void getData() {  

        // 得到sharedpreferences对象  

        setting = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);  

        // 判断是否之前存储过用户名密码  

        if (setting.getBoolean("isKeep", false)) {  

            // 如果之前存储过,则显示在相应文本框内  

            etUsername.setText(setting.getString("username", ""));  

            etPassword.setText(setting.getString("password", ""));  

        } else {  

            // 否则显示空  

            metUsername.setText("");  

            metPassword.setText("");  

        }  

    }  

  

}  

3.记住密码(定义SharedPreferences对象)

private SharedPreferences setting = null;  

private static final String PREFS_NAME = "NamePwd";  

    @Override  

    protected void onCreate(Bundle savedInstanceState) {  

        super.onCreate(savedInstanceState);   

        setContentView(R.layout.activity_main);  

        findView();

        setListener() ;  

        getData();  

    }  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: