zoukankan      html  css  js  c++  java
  • android 39 共享首选项

    共享首选项SharedPreferences:用于存储少量数据,大量数据则存入文件或者sd卡。以键值对保存数据。

     

     activity.java

    package com.sxt.day06_05;
    
    import android.app.Activity;
    import android.content.SharedPreferences;
    import android.content.SharedPreferences.Editor;
    import android.os.Bundle;
    import android.text.TextUtils;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.EditText;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
        EditText metId,metPwd;
        SharedPreferences mSp;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            initView();
            setListener();
            readData();//自动输入密码
        }
        private void readData() {
            mSp=getSharedPreferences("login", MODE_PRIVATE);
            String id=mSp.getString("id", "");
            String pwd=mSp.getString("pwd", "");
            metId.setText(id);
            metPwd.setText(pwd);
        }
        private void setListener() {
            findViewById(R.id.btnLogin).setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View v) {
                    String id=metId.getText().toString();
                    if(TextUtils.isEmpty(id)){
                        metId.setError("编号不能为空");
                        return ;
                    }
                    String pwd=metPwd.getText().toString();
                    if(TextUtils.isEmpty(pwd)){
                        metPwd.setError("密码不能为空");
                        return ;
                    }
                    mSp=getSharedPreferences("login", MODE_PRIVATE);//文件名为login(data/data/com.sxt.day06_05/shared_prefs/login.xml),MODE_PRIVATE表示私有的
                    Editor editor = mSp.edit();//Editor是内部接口
                    editor.putString("id", id);
                    editor.putString("pwd", pwd);
                    editor.commit();//存入首选项
                    Toast.makeText(MainActivity.this, "登陆完成", 2000).show();
                }
            });
        }
        private void initView() {
            metId=(EditText) findViewById(R.id.etId);
            metPwd=(EditText) findViewById(R.id.etPwd);
        }
    }

    页面:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        android:orientation="vertical">
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" 
            android:orientation="horizontal">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="登陆编号" />
    
            <EditText
                android:id="@+id/etId"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="2-10个字符" />
        </LinearLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="登陆密码" />
    
            <EditText
                android:id="@+id/etPwd"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:password="true"
                android:hint="2-10个字符" />
        </LinearLayout>
        <LinearLayout 
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:orientation="horizontal">
            <Button 
                android:id="@+id/btnLogin"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:layout_marginLeft="20dp"
                android:text="登陆"/>
            <Button 
                android:id="@+id/btnExit"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="退出"
                android:layout_marginLeft="20dp"
                android:layout_marginRight="20dp"/>
            
        </LinearLayout>
    </LinearLayout>

     login.xml

  • 相关阅读:
    4G(LTE)背后的技术和利益纠结——VoIP,VoLTE,SIP,IMS的前世今生
    Windows抓取本地回环数据包
    SIP中的早期媒体与回铃音的产生
    SpringMVC整合
    浮点数转换为十进制
    将Sublime Text 2搭建成一个好用的IDE
    python3 'gbk' codec can't decode byte 0x80 in position 读取文件编码集错误的一个bug
    Matplotlib入门教程
    turtle教程-Python绘图
    python画图模块之一:turtle(1) 画五角星、正方形等
  • 原文地址:https://www.cnblogs.com/yaowen/p/4889718.html
Copyright © 2011-2022 走看看