安卓期末项目考核(6)-- 登录

由于前面已经注册了,将其中保存在数据库中,现在的登录就需要将数据匹配,通过就运行登录的点击事件
最开始用sql全查询语句,只能检查是否存在,不能判断密码

if (userDB.findUserByAccount(accountEt.getText().toString()) != null)

需要利用id,用get方法

package com.jiang.jzj_qq;

import android.annotation.SuppressLint;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;

import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;


import androidx.appcompat.app.AppCompatActivity;

import com.jiang.jzj_qq.Papers.Text;
import com.jiang.jzj_qq.Verification.Code;
import com.jiang.jzj_qq.sql.DataHelper;
import com.jiang.jzj_qq.sql.Register;
import com.jiang.jzj_qq.sql.UserUapedate;
import com.jiang.jzj_qq.user.User;
import com.jiang.jzj_qq.user.UserDB;

import java.util.HashSet;
import java.util.Random;
import java.util.Set;

public class Login extends AppCompatActivity {

    private UserDB userDB;
    private EditText accountET,pwdET;
    private String remember;
    private Button LoginButton,RegistButton;
    private String account,pwd;
    private int flag = 0;
    private TextView alluser;

    public static final String TAG = Login.class.getName();
    private ImageView iv_showCode;  //展示验证码
    private EditText et_phoneCode;  //输入验证码
    private TextView Yanzhenma;  //刷新

    //产生验证码
    private String realCode;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        getSupportActionBar().hide();

        et_phoneCode=findViewById(R.id.et_phoneCodes);  //输入的验证码
        Yanzhenma = findViewById(R.id.yanzhenma);  //刷新验证码
        accountET=findViewById(R.id.accountedit);
        pwdET=findViewById(R.id.passwordedit);
        iv_showCode =findViewById(R.id.iv_showCode);   //展示验证码
        //以图片的形式展示出来
        iv_showCode.setImageBitmap(Code.getInstance().createBitmap());
        realCode = Code.getInstance().getCode().toLowerCase();

        iv_showCode.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

            }
        });

        //初始化数据库
        userDB = new UserDB();
        userDB.OpenUserDb(this);
        //1.记住密码
        //初始化控件
        accountET = findViewById(R.id.accountedit);
        pwdET = findViewById(R.id.passwordedit);
        LoginButton = findViewById(R.id.longin);
    }
    public void QH(View view) {
        iv_showCode.setImageBitmap(Code.getInstance().createBitmap());
        realCode = Code.getInstance().getCode().toLowerCase();
        iv_showCode.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

            }
        });

    }
    public void go(View view) {  //进度条 --

        String account, password, yanzm, pdyzm,yz;
        account = accountET.getText().toString();  //账号
        password = pwdET.getText().toString();
         /*
        登录的点击事件,登录后显示进度条
         */
        EditText accountEt = findViewById(R.id.accountedit);
        EditText mima = findViewById(R.id.passwordedit);
        //   accountEt.getText().toString().trim();
        String mma= mima.getText().toString().trim(); //密码
        String data = accountEt.getText().toString();
        yanzm = Yanzhenma.getText().toString();    //刷新验证码
       // yz=realCode
        pdyzm = et_phoneCode.getText().toString(); //输入验证码

        User user = userDB.findUserByAccount(account);
        //判断用户名、密码是否有空
        if (user == null) {
            Toast.makeText(this, "请注册", Toast.LENGTH_SHORT).show();
            return;
        }
        if(pdyzm == null) {
            Toast.makeText(this, "请输入验证码", Toast.LENGTH_SHORT).show();
            return;
        }
        else if(!account.equals(user.getAccount()) || !password.equals(user.getPassword())) {
            Toast.makeText(this, "账号或密码错误", Toast.LENGTH_SHORT).show();
            return;
        }
//        else if(!realCode.equals(pdyzm)){
//                Toast.makeText(this, "验证码错误", Toast.LENGTH_SHORT).show();
//                return;
//        }

//       if (data.equals("") || mima.equals("")) {
//            //            //如果为空,提示密码和账户不能为空
//            //上下环境参数
//            //消息内容
//            //显示时间
//            Toast.makeText(this, "请检查是否完成填写", Toast.LENGTH_LONG).show();
//        }
        //匹配数据库数据
        //accountEt.getText().toString() 获取输入控件
        //加载用户保存的用户名和密码
        //全查询
      //  if (userDB.findUserByAccount(accountEt.getText().toString()) != null){
       //  savedata();
       else if(account.equals(user.getAccount())&&password.equals(user.getPassword())&&pdyzm.equals(pdyzm)){
            //加载进度条
            final ProgressDialog progressDialog = new ProgressDialog(Login.this);
            progressDialog.setTitle("正在加载...");
            progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            new Thread(new Runnable() {
                @Override
                public void run() {
                    for (int i = 0; i < 100; i++) {
                        progressDialog.setProgress(i);
                        try {
                            Thread.sleep(100);
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                    progressDialog.dismiss();
                }
            }).start();
            progressDialog.show();
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            Intent intent = new Intent(Login.this, MainActivity.class);  //显示inter
//            intent.putExtra("extra_data",accountEt.getText().toString()) ;  //重载保存在inter中
//            startActivity(intent);
            intent.putExtra("account",user.getAccount());
            intent.putExtra("name",user.getName());
            intent.putExtra("age",user.getAge());
            intent.putExtra("sex",user.getSex());
            intent.putExtra("psd",user.getPassword());
            startActivity(intent);
            Toast.makeText(Login.this, "登录成功", Toast.LENGTH_SHORT).show();
        }
    }

    public void zhuce(View view) {
        Intent intent = new Intent(Login.this, Register.class);  //显示inter,跳转到注册
        startActivity(intent);
 }


    public void zhaohui(View view) {
        Intent intent = new Intent(Login.this, Find_Mm.class);  //显示inter,跳转到
        startActivity(intent);
    }
}

其中

    Intent intent = new Intent(Login.this, MainActivity.class);  //显示inter
//            intent.putExtra("extra_data",accountEt.getText().toString()) ;  //重载保存在inter中
//            startActivity(intent);
            intent.putExtra("account",user.getAccount());
            intent.putExtra("name",user.getName());
            intent.putExtra("age",user.getAge());
            intent.putExtra("sex",user.getSex());
            intent.putExtra("psd",user.getPassword());
            startActivity(intent);
            Toast.makeText(Login.this, "登录成功", Toast.LENGTH_SHORT).show();
        }
    }

利用intent ,将数据临时存储在MainActivity中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值