这里有新鲜出炉的精品教程,程序狗速度看过来!
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。
这篇文章主要为大家详细介绍了Android实现用户登录记住密码功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
一、打开之前完成的Case_login进行修改再编辑
二、将注册按钮删除并在登录按钮前拖出一个checkBox,编辑代码如下:
在layout_top.xml文件中进行编辑
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:padding="@dimen/activity_horizontal_margin"
- android:background="@drawable/logintop_roundbg">
- <EditText
- android:id="@+id/etName"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:background="@android:drawable/edit_text"
- android:drawableLeft="@drawable/icon_user"
- android:drawablePadding="10dp"
- android:ems="10"
- android:hint="@string/etName">
- <requestFocus />
- </EditText>
- <EditText
- android:id="@+id/etPassword"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_below="@id/etName"
- android:background="@android:drawable/edit_text"
- android:drawableLeft="@drawable/icon_pass"
- android:drawablePadding="10dp"
- android:ems="10"
- android:hint="@string/etPass"
- android:inputType="textPassword">
- <requestFocus />
- </EditText>
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_below="@+id/etPassword">
- <Button
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:background="@drawable/btn_select"
- android:text="@string/btnLogin" />
- <Button
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:layout_marginLeft="10dp"
- android:background="@drawable/btn_select"
- android:text="@string/btnRegister" />
- </LinearLayout>
- </RelativeLayout>
效果图如下:
三、对登录密码及记住密码进行编辑
在LoginAcitvity.java文件进行编写修改,代码如下:
- package cn.edu.bzu.case_login;
- import android.content.Context;
- import android.content.Intent;
- import android.content.SharedPreferences;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.CheckBox;
- import android.widget.EditText;
- import android.widget.Toast;
- public class LoginActivity extends AppCompatActivity {
- private EditText etName;
- private EditText etPassword;
- private CheckBox cbIsRememberPass;
- private SharedPreferences sharedPreferences;
- @Override protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- initViews();
- sharedPreferences = getSharedPreferences("rememberpassword", Context.MODE_PRIVATE);
- boolean isRemember = sharedPreferences.getBoolean("rememberpassword", false);
- if (isRemember) {
- String name = sharedPreferences.getString("name", "");
- String password = sharedPreferences.getString("password", "");
- etName.setText(name);
- etPassword.setText(password);
- cbIsRememberPass.setChecked(true);
- }
- }
- private void initViews() {
- etName = (EditText) findViewById(R.id.etName);
- etPassword = (EditText) findViewById(R.id.etPassword);
- cbIsRememberPass = (CheckBox) findViewById(R.id.cbIsRememberPass);
- }
- public void login(View view) {
- String name = etName.getText().toString();
- String password = etPassword.getText().toString();
- if ("admin".equals(name) && "123456".equals(password)) {
- SharedPreferences.Editor editor = sharedPreferences.edit();
- if (cbIsRememberPass.isChecked()) {
- editor.putBoolean("rememberpassword", true);
- editor.putString("name", name);
- editor.putString("password", password);
- } else {
- editor.clear();
- }
- editor.commit();
- Intent intent = new Intent(this, MainActivity.class);
- startActivity(intent);
- finish();
- } else {
- Toast.makeText(this, "账户或密码错误", Toast.LENGTH_LONG).show();
- }
- }
- }
四、设计登录后的界面
新建一个MainActivity.java文件,同时生成一个activity_main.xml,对其进行编写代码效果图如下:
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/activity_main"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingBottom="@dimen/activity_vertical_margin"
- android:paddingLeft="@dimen/activity_horizontal_margin"
- android:paddingRight="@dimen/activity_horizontal_margin"
- android:paddingTop="@dimen/activity_vertical_margin"
- tools:context="cn.edu.bzu.case_login.MainActivity">
- <TextView
- android:text="Welcome you"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerVertical="true"
- android:layout_centerHorizontal="true"
- android:textSize="40sp"
- android:id="@+id/textView" />
- </RelativeLayout>
五、结果演示
再次打开软件密码就记住了如图:
输入错误的密码有提示如下图:
来源: http://www.phperz.com/article/17/0831/337658.html