前言
这个项目是我很早的时候写的,现在将其发上来供大家参考。可能存在一些不规范的问题,如有不对,欢迎批评指正。首先需要安装配置好Java开发环境,并选择任意一款Android开发工具进行编程,推荐下载安装Android Studio软件进行程序开发。在开始进行Android编程开发之前需要对Java基础知识有一定的了解和掌握。
一、基本要求
实现一个简单的用户登录界面,功能如下:
1、默认不存储用户信息,默认隐藏密码。
2、能通过勾选框记住密码、显示密码,点击登录后实现页面跳转至主页面。
3、通过“登录”进入主界面,通过“退出”退出APP,主界面通过“返回”返回到登录页面
4、登录界面显示登录的用户名及当前用户的登录时间
二、关键代码分析
1、在进行登录跳转时,manifest.xml必须写入新活动名,否则无法实现跳转
2、从SharedPreferences中获取是否记住当前用户的相关参数(登录名及密码),设置账号与密码到文本编辑框,并勾选记住当前用户名与密码
//从SharedPreferences中获取是否记住密码的参数final SharedPreferences preference = PreferenceManager.getDefaultSharedPreferences(this);boolean isRemember = preference.getBoolean("remember_pwd", false);//设置账号与密码到文本框,并勾选记住密码if (isRemember) {username.setText(preference.getString("name", ""));password.setText(preference.getString("password", ""));remember_pwd.setChecked(true);}
3、设置用户名和密码校验;如果校验成功且勾选记住密码,保存密码和用户名,如未勾选,登录成功后清除保存的数据
String inputName = username.getText().toString();String pwd = password.getText().toString();//进行登录用户名和密码校验if (inputName.equals("老王") && pwd.equals("123456789")) {SharedPreferences.Editor editor = preference.edit();if (remember_pwd.isChecked()) {//记住账号与密码editor.putBoolean("remember_pwd", true);editor.putString("name", inputName);editor.putString("password", pwd);} else {//清空数据editor.clear();}editor.apply();
4、跳转至主界面WelcomeActivity.java
WelcomeActivity.actionStart(MainActivity.this, inputName, pwd);
5、是否显示密码,默认不勾选显示密码
@Overridepublic void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {if (isChecked) {//如果选中,显示密码editText.setTransformationMethod(HideReturnsTransformationMethod.getInstance()); } else {//否则隐藏密码editText.setTransformationMethod(PasswordTransformationMethod.getInstance());} }
6、退出登录
cancel.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {finish();}});
7、登录成功后,用户名显示
//登录成功后,用户名显示private void showWelcome() {Bundle bundle = getIntent().getExtras();String name = bundle.getString("username");myWelcome.setText("\n" + name + " 您好!\n欢迎光临");}
8、获取当前的登录时间
private void showTime() {SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");Date curDate = new Date(System.currentTimeMillis());//获取当前时间String str = formatter.format(curDate);myTime.setText("您的登录时间为:"+str);}
三、页面代码展示
activity_main.xml:
welcome.xml:
五、结果展示
1、用户登录界面如下:
2、默认不存储用户信息,默认隐藏密码:
3、能通过勾选框记住密码、显示密码,以及账号密码正确或错误提示:
4、点击登录后实现页面跳转进行主界面,主界面显示当前登录时间和用户:
5、项目综合演示
源码下载:安卓开发实战之登录界面跳转-Android文档类资源-CSDN下载