移动技术 > 移动开发 > Android

Android制作登录页面并且记住账号密码功能的实现代码

132人参与2020-06-23

一、页面搭建

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.constraintlayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent">
  <edittext
    android:id="@+id/et_username"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginstart="16dp"
    android:layout_marginleft="16dp"
    android:layout_margintop="32dp"
    android:layout_marginend="16dp"
    android:layout_marginright="16dp"
    android:ems="10"
    android:hint="请输入账号"
    android:inputtype="textpersonname"
    app:layout_constraintend_toendof="parent"
    app:layout_constraintstart_tostartof="parent"
    app:layout_constrainttop_totopof="parent" />
  <edittext
    android:id="@+id/et_password"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginstart="16dp"
    android:layout_marginleft="16dp"
    android:layout_margintop="8dp"
    android:layout_marginend="16dp"
    android:layout_marginright="16dp"
    android:ems="10"
    android:hint="请输入密码"
    android:inputtype="textpassword"
    app:layout_constraintend_toendof="parent"
    app:layout_constraintstart_tostartof="parent"
    app:layout_constrainttop_tobottomof="@+id/et_username" />
  <checkbox
    android:id="@+id/checkbox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margintop="16dp"
    android:text="记住密码"
    app:layout_constraintstart_tostartof="@+id/et_password"
    app:layout_constrainttop_tobottomof="@+id/et_password" />
  <button
    android:id="@+id/button"
    android:onclick="login"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginstart="24dp"
    android:layout_marginleft="24dp"
    android:layout_marginend="24dp"
    android:layout_marginright="24dp"
    android:text="安全登录"
    app:layout_constraintbottom_tobottomof="@+id/checkbox"
    app:layout_constraintend_toendof="parent"
    app:layout_constraintstart_toendof="@+id/checkbox"
    app:layout_constrainttop_totopof="@+id/checkbox" />
</android.support.constraint.constraintlayout>

二、代码实现

package com.hiscene.test;
import android.support.v7.app.appcompatactivity;
import android.os.bundle;
import android.text.textutils;
import android.view.view;
import android.widget.checkbox;
import android.widget.edittext;
import android.widget.toast;
import java.io.bufferedreader;
import java.io.bufferedwriter;
import java.io.file;
import java.io.filenotfoundexception;
import java.io.fileoutputstream;
import java.io.filereader;
import java.io.outputstream;
import java.io.outputstreamwriter;
public class mainactivity extends appcompatactivity {
  edittext et_username;
  edittext et_password;
  checkbox checkbox;
  @override
  protected void oncreate(bundle savedinstancestate) {
    super.oncreate(savedinstancestate);
    setcontentview(r.layout.login_layout);
    et_username = findviewbyid(r.id.et_username);
    et_password = findviewbyid(r.id.et_password);
    checkbox = findviewbyid(r.id.checkbox);
    loadinfo();
  }
  private void loadinfo()
  {
    file file=new file("data/data/com.hiscene.test/usre.txt");
    if (!file.exists()) return;
    try {
      filereader reader = new filereader(file);
      bufferedreader br=new bufferedreader(reader);
      string text=br.readline();
      string[] arr=text.split("#");
      et_username.settext(arr[0]);
      et_password.settext(arr[1]);
      checkbox.setchecked(true);
      br.close();
    }catch (exception e) {
      e.printstacktrace();
    }
  }
  public void login(view view) {
    string username=et_username.gettext().tostring().trim();
    string password= et_password.gettext().tostring().trim();
    if (textutils.isempty(username)|| textutils.isempty(password))
    {
      toast.maketext(mainactivity.this, "用户名或密码不能为空!", toast.length_short).show();
      return;
    }
    if (checkbox.ischecked())
    {
      file file=new file("data/data/com.hiscene.test/usre.txt");
      try {
        outputstream out=new fileoutputstream(file);
        outputstreamwriter osw=new outputstreamwriter(out,"utf-8");
        bufferedwriter writer=new bufferedwriter(osw);
        writer.write(username+"#"+password);
        writer.flush();
        writer.close();
      } catch (exception e) {
        e.printstacktrace();
      }
    }
  }
}

总结

到此这篇关于android制作登录页面并且记住账号密码功能的实现代码的文章就介绍到这了,更多相关android 登录页面记住密码内容请搜索萬仟网以前的文章或继续浏览下面的相关文章希望大家以后多多支持萬仟网!

您对本文有任何疑问!!点此进行留言回复

推荐阅读

猜你喜欢

Android制作登录页面并且记住账号密码功能的实现代码

06-23

Android studio开发小型对话机器人app(实例代码)

06-23

Android安装应用 INSTALL_FAILED_DEXOPT 问题及解决办法

06-23

Android通过Java sdk的方式接入OpenCv的方法

06-23

Android 代码一键实现银行卡绑定功能

06-23

Android 通过cmake的方式接入opencv的方法步骤

06-23

大家都在看

Android制作登录页面并且记住账号密码功能的实现代码

06-23

Android app security安全问题大全

03-01

Android ViewPager实现图片轮翻效果

07-24

Android 通过webservice上传多张图片到指定服务器详解

07-26

angularJS入门笔记

04-14

android使用gesturedetector手势识别示例分享

07-24

android USB如何修改VID具体实现

07-24

Android开发环境搭建

07-24

拓展阅读

热门评论