android利用SharedPreferences来保存用户参数及读取
2013-08-25 09:39
609 查看
软件需求:用户输入姓名和年龄点击保存按钮将信息保存到xml中当再次登陆的时候输入的信息显示在文本框中
Activity文件
布局文件注意button应该这样设置
Activity文件
package com.example.shareperences; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import com.example.service.PrefercesService; public class MainActivity extends Activity { private Button button; private EditText name,age; private PrefercesService prefercesService; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button=(Button)this.findViewById(R.id.button); name=(EditText)this.findViewById(R.id.name); age=(EditText)this.findViewById(R.id.age); prefercesService=new PrefercesService(this); Map<String,String> params=prefercesService.getPreferences(); name.setText(params.get("name")); age.setText(params.get("age")); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } public void save(View v){ /* * 如果想在Activity中得到SharedPreferences对象则可以用方法 * this.getPreferences(mode)这里只有一个参数 文件存储类型,此时文件的名字默认为 * 当前activity的名字 不包括包名 */ String nameString=name.getText().toString(); String ageString=age.getText().toString(); prefercesService.save(nameString,Integer.parseInt(ageString)); Toast.makeText(MainActivity.this, R.string.success, Toast.LENGTH_LONG).show(); } }
package com.example.service; import java.util.HashMap; import java.util.Map; import android.content.Context; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; public class PrefercesService { private Context context; public PrefercesService(Context context) { super(); this.context = context; } /** * 保存参数 * @param name 姓名 * @param age 年龄 */ public void save(String name, int 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(){ SharedPreferences pre=context.getSharedPreferences("itcast", Context.MODE_PRIVATE); //如果得到的name没有值则设置为空 pre.getString("name", ""); Map<String,String> params=new HashMap<String,String>(); params.put("name", pre.getString("name", "")); params.put("age", String.valueOf(pre.getInt("age", 0))); return params; } }
布局文件注意button应该这样设置
<Button android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/button" android:text="@string/save" android:onClick="save" />
相关文章推荐
- 保存、方法-Android文件存储--采用SharedPreferences保存用户偏好设置参数和读取设置参数-by小雨
- Android文件存储--采用SharedPreferences保存用户偏好设置参数和读取设置参数
- Android实现勾选保存用户名登陆信息、进入自动读取用户登陆信息
- Android之使用SharedPreferences保存用户偏好参数
- Android开发入门之采用SharedPreferences保存用户偏好设置参数
- android 使用sharedPreferences保存用户设置的参数
- Android采用SharedPreferences保存用户偏好设置参数
- Android基础入门教程——6.2 数据存储与访问之——SharedPreferences保存用户偏好参数
- android下保存用户账号密码和读取账号密码
- Android采用SharedPreferences保存用户偏好设置参数
- Android 利用SharedPreferences保存与删除 用户登录数据
- android第十三步采用SharedPreference保存用户偏好设置参数
- Android心得4.2--SharedPreference保存用户偏好参数设置.doc
- android的图片保存和读取
- Android中利用httpclient进行网络通信的方法(以用户登录为例说明)
- Android SMS(二)—— 读取短信保存到 SQLite
- iOS开发--利用keychain保存用户数据
- Android系统参数的读取
- [Android]利用run-as命令在不root情况下读取data下面的数据
- SharedPreferences(保存用户偏好参数)