归档—SharedPreferences(轻量级存储)
2015-07-16 22:15
316 查看
<p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; font-size: 14px; line-height: 26px;">SharedPreferences(轻量级的存储),通常我们可以用它来记录一些小的数据,例如我们可以记录用户的账号及密码,以便用户下次登录不需要重复输入。</p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; font-size: 14px; line-height: 26px;">示例代码:</p>
import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener{ private EditText pass; private EditText user; private SharedPreferences sp; private String strPass; private String strUser; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button but= (Button) findViewById(R.id.but); but.setOnClickListener(this); pass = (EditText) findViewById(R.id.edi_pass); user = (EditText) findViewById(R.id.edi_user); sp = this.getSharedPreferences("sp", Context.MODE_PRIVATE); String u = sp.getString("user",""); String p = sp.getString("pass", null); if("".equals(u) || p != null){ user.setText(u); pass.setText(p); } } @Override public void onClick(View v) { strPass = pass.getText().toString().trim(); strUser = user.getText().toString().trim(); Toast.makeText(this, "账号:"+strUser+" 密码:"+strPass, Toast.LENGTH_SHORT).show(); if ("123".equals(strUser) && "12345".equals(strPass)) { Toast.makeText(this, "输入正确", Toast.LENGTH_SHORT).show(); Editor edi=sp.edit(); boolean is=sp.getBoolean("isf", true); if (is) { edi.putBoolean("isf", false); }else{ } edi.putString("pass", strPass); edi.putString("user", strUser); edi.commit(); }else{ Toast.makeText(this, "输入错误", Toast.LENGTH_SHORT).show(); } } }
布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/edi_user"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="账号" />
<EditText
android:id="@+id/edi_pass"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="密码" />
<Button
android:id="@+id/but"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登录" />
</LinearLayout>
相关文章推荐
- javascript日历控件
- jquery获取表单数据无刷新提交
- 浏览器默认样式
- css属性:改变鼠标形状
- JS相关方法总计
- 关于JavaScript刷新一次页面的代码块
- 如何直接强制客户端刷新.js文件
- 如何将json数据传回前台
- nodejs的模块机制
- synergy使用配置<Server window7 Client Fedora21>
- 初步探索jackson对json格式处理
- 怎样判断js对象的类型
- JQuery JSONP跨域 初识(一)
- error C4996: 'strcpy': This function or variable may be unsafe.
- Fedora21及22永久修改MAC地址
- html常用的标签
- Node:区间DP-1
- CSS3中渐变gradient详解
- css垂直居中对齐
- 从Angular转向React