Android开发_Sharedpreferences_存储数据使用方法_完整Demo_AndroidStudio

Android开发_Sharedpreferences_存储数据使用方法_完整Demo_AndroidStudio_第1张图片

Android开发_Sharedpreferences_存储数据使用方法_完整Demo_AndroidStudio_第2张图片

Android开发_Sharedpreferences_存储数据使用方法_完整Demo_AndroidStudio_第3张图片

Android开发_Sharedpreferences_存储数据使用方法_完整Demo_AndroidStudio_第4张图片


项目完整压缩包:http://download.csdn.net/detail/iwanghang/9606408


manifests.xml:

xml version="1.0" encoding="utf-8"?>
xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.iwanghang.sharedpreferencesdemo">

            android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        android:name=".MainActivity">
            
                android:name="android.intent.action.MAIN" />

                android:name="android.intent.category.LAUNCHER" />
            
        
    

MainActivity.java:

package com.iwanghang.sharedpreferencesdemo;

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import java.util.Map;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /**
         * 任意key及对应value写入,全部key和value读取
         */
        final EditText editText_key = (EditText) findViewById(R.id.editText_key);
        final EditText editText_value = (EditText) findViewById(R.id.editText_value);
        Button button_write = (Button) findViewById(R.id.button_write);
        Button button_read_all = (Button) findViewById(R.id.button_read_all);

        /**
         * name的value写入,name的value读取
         */
        final EditText editText_name = (EditText) findViewById(R.id.editText_name);
        Button button_write_name = (Button) findViewById(R.id.button_write_name);
        Button button_read_name = (Button) findViewById(R.id.button_read_name);

        /**
         * age的value写入,age的value读取
         */
        final EditText editText_age = (EditText) findViewById(R.id.editText_age);
        Button button_write_age = (Button) findViewById(R.id.button_write_age);
        Button button_read_age = (Button) findViewById(R.id.button_read_age);

        /**
         * 内容显示
         */
        final TextView textView_content = (TextView) findViewById(R.id.textView_content);

        //1、获取SharedPreferences对象。SharedPreferences是一个接口,程序无法直接创建SharedPreferences对象,只能通过Context提供的getSharedPreferences()方法。
        final SharedPreferences preference = getSharedPreferences("test", MODE_PRIVATE);

        //2、获取SharedPreferences。Editor对象,用于写数据。本步骤只对写数据有必要。
        final SharedPreferences.Editor editor = preference.edit();

        button_write.setOnClickListener(new View.OnClickListener(){

            @Override
            public void onClick(View v) {
                String key = editText_key.getText().toString().trim();
                String value = editText_value.getText().toString().trim();
                //3、写入数据并commit。
                editor.putString(key, value);
                editor.commit();
            }

        });

        /**
         *  读取所有数据
         */
        button_read_all.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String content = "";
                Map, ?> allContent = preference.getAll();
                // 注意遍历map的方法
                for(Map.Entry, ?>  entry : allContent.entrySet()){
                    content += ("key:" + entry.getKey()+ "=" +entry.getValue() + ", ");
                }
                textView_content.setText(content);
            }
        });

        /**
         *  name写入
         */
        button_write_name.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String key = "name";
                String value = editText_name.getText().toString().trim();
                //3、写入数据并commit。
                editor.putString(key, value);
                editor.commit();
            }
        });

        /**
         *  name读取
         */
        button_read_name.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String content = preference.getString("name", "null");
                textView_content.setText(content);
            }
        });

        /**
         *  age写入
         */
        button_write_age.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String key = "age";
                String value = editText_age.getText().toString().trim();
                //3、写入数据并commit。
                editor.putString(key, value);
                editor.commit();
            }
        });

        /**
         *  age读取
         */
        button_read_age.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String content = preference.getString("age", "17");
                textView_content.setText(content);
            }
        });

    }

}
activity_main.xml:

xml version="1.0" encoding="utf-8"?>
xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    
            android:id="@+id/write_key_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
                    android:id="@+id/insert_text_setOut"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="请输入任意key:"
            android:textSize="20dp" />
                    android:id="@+id/editText_key"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    

    
            android:id="@+id/write_value_layout"
        android:layout_below="@+id/write_key_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
                    android:id="@+id/insert_text_setOut2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="请输入对应value:"
            android:textSize="20dp" />
                    android:id="@+id/editText_value"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    

    
            android:id="@+id/write_read_layout"
        android:layout_below="@+id/write_value_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        


你可能感兴趣的:(JAVA,Android)