MainActivity.java代码
package cn.itcast.settings;
import java.util.Map;
import cn.itcast.service.PreferencesService;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText nameText;
private EditText ageText;
private PreferencesService service;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nameText = (EditText) this.findViewById(R.id.name);
ageText = (EditText) this.findViewById(R.id.age);
service = new PreferencesService(this);
Map<String, String> params = service.getPreferences();
nameText.setText(params.get("name"));
ageText.setText(params.get("age"));
}
public void save(View v){
String name = nameText.getText().toString();
String age = ageText.getText().toString();
service.save(name, Integer.valueOf(age));
Toast.makeText(getApplicationContext(), R.string.success, 1).show();
}
}
layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/name"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/name"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/age"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:numeric="integer"
android:id="@+id/age"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button"
android:onClick="save"
/>
</LinearLayout>
value/string.xml 配置文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, MainActivity!</string>
<string name="app_name">软件参数设置</string>
<string name="name">姓名</string>
<string name="age">年龄</string>
<string name="button">保存参数</string>
<string name="success">保存完成</string>
</resources>
核心操作类 PerferencesServer.java
package cn.itcast.service;
import java.util.HashMap;
import java.util.Map;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
public class PreferencesService {
private Context context;
public PreferencesService(Context context) {
this.context = context;
}
/**
* 保存参数
* @param name 姓名
* @param age 年龄
*/
public void save(String name, Integer age) {
SharedPreferences preferences = context.getSharedPreferences("itcast", Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.putString("name", name);
editor.putInt("age", age);
editor.commit();
}
/**
* 获取各项配置参数
* @return
*/
public Map<String, String> getPreferences(){
Map<String, String> params = new HashMap<String, String>();
SharedPreferences preferences = context.getSharedPreferences("itcast", Context.MODE_PRIVATE);
params.put("name", preferences.getString("name", ""));
params.put("age", String.valueOf(preferences.getInt("age", 0)));
return params;
}
}
分享到:
相关推荐
layout9为SharedPreferences数据存储和读取功能应该的一个关于记住密码功能实例。 layout11为SharedPreferences的数据存储和读取实例。
fristActivity用于存储SharedPreferences数据,secondActivity删除SharedPreferences,moreactivtiy用于判断SharedPreferences是否删除,如果删除跳转到secondActivity,没有跳转到fristActivity。
实验九 使用SharedPreferences存储简单数据
Android 3种数据保存(SharedPreferences存储 内部文件存储 数据库存储),如项目包有问题请联系我谢谢
本实例通过使用SharedPreferences方式储存网络上的数据,实现在没有网络的情况下也可以显示数据,节省流量的一个好办法!
Android项目开发中使用的数据存储方式有:网络存储、sqlite存储、File存储和SharedPreferences存储,四种存储方式对应的Demo别人是NetworkDemo、SqliteDemo、FileDemo和SharedPreferencesDemo,根据应用的场景选择...
前面呢,我们讲了文件的存储,文件的存储方式不适合保存一些比较复杂的文本数据。因此,我们来学习一下...SharedPreferences支持不同类型的数据存储,如果你存储的是整型,那你读取出来的也是整型,你存储的是浮点型,
NULL 博文链接:https://hack-zhang.iteye.com/blog/1265370
Android使用SharedPreferences进行数据存储,缓存ID等数据
Android数据存储之SharedPreferences,自己根据文档编写的代码,有需要的就下载吧。
SharedPreferences数据保存在: /data /data/<package> /shared_prefs 文件夹下,以XML格式保存,根元素为:。文件名称为获取SharedPreferences实例时传递的參数值。 <string name=key> value 获取实例 ...
android 使用SharedPreferences对数据存储/删除/读取/文件删除
Sharedpreferences存储数据的使用方法_完整Demo_AndroidStudio http://blog.csdn.net/iwanghang
利用数据存储的SharedPreferences开发技术,实现了一个简易的登录界面,可以记住登录密码等。
SharedPreferences存储获取信息,其中也用到了ActionBar设置菜单
存储List数据到本地的常用方式一般是用sqlite,但是如果不想用sqlite,或者数据量很少,使用SharedPreferences也是一种不错的选择。
除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,不同于文件的存储方式,SharedPreferences是使用键值对(key-value)数据的方式来存储数据的。而且SharedPreferences还支持多种不同的数据类型...
通过代码文件将SharedPreferences数据存储的使用做了进一步的使用,让更多人懂得使用它
数据持久化就是指将那些内存中的瞬时数据保存到持久化设备中(如手机文件、数据库等),当关机,...SharedPreferences 是使用键值对的方式来存储数据的,使用 SharedPreferences来进行数据持久化要比使用文件方便很多。
利用SharedPreferences数据存储方式简单的完成登录页面的记住账号功能