Android开发之SharedPreferences数据保存

//只做了一个页面,没有跳转
MainActivity.java

public class MainActivity extends AppCompatActivity {
    EditText user;
    EditText pass;
    SharedPreferences sharedPreferences;
    Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //初始化xml控件
        user = (EditText) findViewById(R.id.user);
        pass = (EditText) findViewById(R.id.pass);
        button = (Button) findViewById(R.id.login);

        //使用SharedPreferences读取数据 定义文件名称
        final String FILE_NAME = "logi";
        sharedPreferences = getSharedPreferences(FILE_NAME, MODE_PRIVATE);

        //设置用户名、密码;如果为获取到数据则为空
        user.setText(sharedPreferences.getString("user", null));
        pass.setText(sharedPreferences.getString("pass", null));


        //Button按钮点击事件监听
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //获取getSharedPreferences.Edit()写入数据
                Editor e = getBaseContext().getSharedPreferences(FILE_NAME, MODE_PRIVATE).edit();
                //提交数据
                e.putString("user",user.getText().toString());
                e.putString("pass",pass.getText().toString());
                e.commit();
            }
        });
    }

}

xml页面

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="10dp"
    tools:context="com.ccyumo.sharedpreferences.MainActivity">

    <EditText
        android:id="@+id/user"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:gravity="center_vertical"
        android:hint="请输入账号..." />

    <EditText
        android:id="@+id/pass"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:gravity="center_vertical"
        android:hint="请输入密码..." />


    <Button
        android:id="@+id/login"
        android:layout_width="match_parent"
        android:layout_height="50dp"

        android:text="提交" />
</LinearLayout>

**注意 androidManifest.xml 需要写入权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

猜你喜欢

转载自blog.csdn.net/weixin_44174689/article/details/85205640
今日推荐