自动匹配输入和记住密码

本文详细介绍了如何实现自动匹配输入的功能,利用AutoCompleteTextView从数据源动态匹配内容,并探讨了使用Android内置的SQLiteDatabase存储数据以及SharedPreferences记录密码的方法。在启动时,根据SharedPreferences中的保存状态自动填充账号和密码,点击按钮时会检查并保存CheckBox状态、账号及密码。代码示例展示了整个流程。
摘要由CSDN通过智能技术生成

    

     本文主要记录的是输入时常用到的自动匹配输入,和保存密码部分的知识。最终要实现的是:当输入文字时,会从数据源中查找相匹配的内容,如果没找到,就把输入的数据添加进去。当我们选中保存密码时,退出程序再次打开时,会自动把账号和密码填充进来。效果图如下:

                        

       整体实现的大致思想就是:使用AutoCompleteTextView实现数据的自动匹配;使用安卓内嵌的SQLiteDatabase进行数据的存储;使用SharedPreferences实现密码的记录。在启动程序时,在Activity的onCreate()方法中首先获取用来存储密码的SharedPreferences文件,读取其中记录的CheckBox状态值,如果为选中状态,则把保存的账号和密码设置到输入框内,反之,不作为。当我们点击连接网络等按键时都会检查CheckBox的状态,如果是选中状态,则把状态,账号和密码都保存到SharedPreferences文件中。同时,判断数据库中是否含有输入的内容,没有则添加进去。

      为此,首先要了解AutoCompleteTextView的用法。AutoCompleteTextView是安卓中能实现自动匹配的一个控件。其用法和其他控件没有多少不同,主要区别就是,它需要设置一个适配器,来提供数据源,大致流程如下:

          nameET=(AutoCompleteTextView) findViewById(R.id.account);//获取一个对象。

          //R.layout.item_drop是自己随便定义的一个布局,R.id.item是其中的TextView组件的ID,strLists是一个字符串列表

          mAdapter=new ArrayAdapter<String>(this, R.layout.item_drop, R.id.item,strLists);

          nameET.setAdapter(mAdapter);

         其次,就是数据库,以及SharedPreferences应用方面的知识,这里就不做讲述了。仅通过代码来展示其中的逻辑。

Activit如下:


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;

import com.an
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值