Android 存储文件方式之一---SharedPreferences 内容提供者,以xml 的方式进行数据 存储。是一种轻量级的文件数据存储_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > Android 存储文件方式之一---SharedPreferences 内容提供者,以xml 的方式进行数据 存储。是一种轻量级的文件数据存储

Android 存储文件方式之一---SharedPreferences 内容提供者,以xml 的方式进行数据 存储。是一种轻量级的文件数据存储

 2014/5/1 15:47:42  〆天天向上  博客园  我要评论(0)
  • 摘要://UI界面的布局文件<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="fill_parent"//填充父元素线性布局android:layout_height="fill_parent"android:orientation="vertical"><
  • 标签:android 文件 Preference 内容 数据 方式 SharedPreferences XML
class="brush:java;gutter:true;">//UI界面的布局 文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent"//填充父元素 线性布局
android:layout_height="fill_parent" android:orientation="vertical" > <EditText android:id="@+id/UserName"//id名称方便后台获取到该控件名称来去控件里面的值
android:layout_width="fill_parent" android:layout_height="wrap_content" android:ems="10" android:inputType="text" > <requestFocus /> </EditText> <EditText android:id="@+id/Password" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="text" /> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" > <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="login"//在该Button按钮上面绑定onClick()方法 login和后台中的login名称需要一直,否则将找不到后台的方法
android:text="登陆" android:width="80dp" /> <CheckBox android:id="@+id/saveUserAndPassword" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="180dp" /> </LinearLayout> </LinearLayout>

 

package com.example.saveuserandpasswor; import android.app.Activity; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.CheckBox; import android.widget.EditText; import android.widget.Toast;
/**
*模拟一个简单的用户登录时保存密码的功能。该demo 没有对密码进行加密,处于安全考虑可以使用MD5或UUID进行密码加密 --后台代码
*/ public class MainActivity extends Activity { private EditText userName; private EditText password; private CheckBox cb; private SharedPreferences sp;// 内容提供者 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); userName = (EditText) findViewById(R.id.UserName);//获取ui界面中的空间元素 password = (EditText) findViewById(R.id.Password); cb = (CheckBox) findViewById(R.id.saveUserAndPassword); sp = getSharedPreferences("save", MODE_PRIVATE);// 设置保存信息的配置文件是私有的文件,存储问文件形式以xml文件存储,其实就是一个map // 集合 String username = sp.getString("username", ""); String pass = sp.getString("password", ""); if (username.length() != 0 && pass.length() != 0) { userName.setText(username); password.setText(pass); cb.setChecked(true); } } public void login(View view) {//在UI界面里面对Button按钮进行事件绑定,onclick() 方法
String user = userName.getText().toString(); String pass = password.getText().toString(); boolean iscb = cb.isChecked(); Editor editor = sp.edit();// 获取编辑器 if (iscb) {// 如果checkbox 被选中则保存用户名和密码 editor.putString("username", user); editor.putString("password", pass); } else { editor.putString("username", ""); editor.putString("password", ""); } editor.commit();// 登陆完事后将用户输入的账号密码保存到配置文件中 Toast.makeText(getApplicationContext(), "登陆成功", Toast.LENGTH_SHORT)// 操作完成一个时间后执行的操作 .show(); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } }

 

上一篇: Java程序挂掉的几种可能 下一篇: 没有下一篇了!
发表评论
用户名: 匿名