Tears_fg

导航

Android_sharePreference_ex1

xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
   <LinearLayout 
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:orientation="horizontal"
       >
       <TextView 
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="用户名:"
           android:textSize="20sp"
       />
       <EditText 
           android:id="@+id/user"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:textSize="20sp"
       />
   </LinearLayout>
    <LinearLayout 
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:orientation="horizontal"
       >
       <TextView 
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="密   码:"
           android:textSize="20sp"
       />
       <EditText 
           android:id="@+id/pass"
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:textSize="20sp"
       />
   </LinearLayout>
    <CheckBox 
        android:id="@+id/check"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         android:checked="false"
        android:text="保存密码"
        android:textSize="20sp"
     />
    <LinearLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >
      <Button 
          android:id="@+id/login"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="登录"
        android:onClick="Click"
          android:textSize="20sp"/>
        <Button 
          android:id="@+id/cancel"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="取消"
        android:onClick="Click"
          android:textSize="20sp"/>
    </LinearLayout>
</LinearLayout>

源代码:

package com.example.sharepreferencesdemo;

import java.util.prefs.Preferences;

import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;
/**
 * 利用preferences保存登录的用户名
 * @author Administrator
 *
 */
public class sharePreferences_example extends Activity{
        private EditText user;
        private EditText pass;
        private Button login;
        private Button cancel;
        private CheckBox check;
        private Editor editor;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            super.onCreate(savedInstanceState);
            setContentView(R.layout.pref_examle);
            user = (EditText) findViewById(R.id.user);
            pass = (EditText) findViewById(R.id.pass);
            login = (Button) findViewById(R.id.login);
            cancel = (Button) findViewById(R.id.cancel);
            check = (CheckBox) findViewById(R.id.check);
            SharedPreferences pref =  getSharedPreferences("userInfo",MODE_PRIVATE);
            editor = pref.edit();
            String name = pref.getString("userName", "");
            if(name.equals("")){
                check.setChecked(false);
            }else{
                check.setChecked(true);
                user.setText(name);
            }
            
        }
        public void Click(View view){
            String userName = user.getText().toString().trim();
            String passWord = pass.getText().toString();
            switch(view.getId()){
            case R.id.login:
                if("zhangsan".equals(userName)&&"123456".equals(passWord)){
                    Toast.makeText(this, "登录成功", Toast.LENGTH_SHORT).show();
                    if(check.isChecked()){
                        editor.putString("userName", userName);
                        editor.commit();
                    }else{
                        editor.remove("userName");
                        editor.commit();
                    }
                }else{
                    Toast.makeText(this, "登录失败", Toast.LENGTH_SHORT).show();
                }
                break;
            case R.id.cancel:
                break;
            }
        }
}

 

posted on 2016-06-14 13:11  Tears_fg  阅读(175)  评论(0编辑  收藏  举报