sharepreference实现记住密码功能

来源:互联网 发布:斗鱼登录网络异常 编辑:程序博客网 时间:2024/05/22 04:41

    SharePreference是用于保存数据用的,主要调用Context.getSharePreferences(String name, int mode)方法来得到SharePreferences接口,该方法的第一个参数是文件名称,第二个参数是操作模式。

操作模式有三种:


MODE_PRIVATE(私有) 

MODE_WORLD_READABLE(可读)

MODE_WORLD_WRITEABLE(可写)


   SharePreference提供了获得数据的方法,如getString(String key,String defValue)等,调用harePreferences的edit()方法返回SharePreferences.Editor内部接口,该接口提供了保存数据的方法如:putString(String key,String value)等,调用该接口的commit()方法可以将数据保存。


效果图如下:





主要xml代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="@drawable/bg_login_activity"    android:orientation="vertical"    tools:context=".MainActivity" >    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_marginLeft="35dip"        android:layout_marginTop="150dip"        android:orientation="horizontal" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="用户名:"            android:textSize="20dp" />        <EditText            android:id="@+id/username"            android:layout_width="200dp"            android:layout_height="35dp"            android:background="@drawable/bg_input_center" />    </LinearLayout>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_marginLeft="35dip"        android:layout_marginTop="8dp"        android:orientation="horizontal" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="    密码:"            android:textSize="20dp" />        <EditText            android:id="@+id/password"            android:layout_width="200dp"            android:layout_height="35dp"            android:background="@drawable/bg_input_center"            android:password="true" />    </LinearLayout>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_marginLeft="75dip"        android:layout_marginTop="8dp"        android:orientation="horizontal" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="记住密码:" />        <CheckBox            android:id="@+id/savePassword"            android:layout_width="wrap_content"            android:layout_height="wrap_content" />    </LinearLayout>        <Button        android:id="@+id/login_btn"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginLeft="75dip"        android:text="登陆" />        </LinearLayout>    </LinearLayout>

保存数据到文件的主要函数:


public void setUserInfo(String key, String value) {          SharedPreferences sp = context.getSharedPreferences(USER_INFO,                  Context.MODE_PRIVATE);          SharedPreferences.Editor editor = sp.edit();          editor.remove(key);          editor.putString(key, value); 26         editor.commit(); 27     }






1 0
原创粉丝点击