注册登录
MainActivity

package com.example.lenovo.testapp1;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import java.util.Vector;
public class MainActivity extends AppCompatActivity {
//获取文本框。判断里边信息
EditText et_usercode;
EditText et_password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_usercode=(EditText)findViewById(R.id.et_usecode);
et_password=(EditText)findViewById(R.id.et_password);
}
//View表示事件的发起者
public void bt1_on(View v)
{
//带返回的打开一个注册界面Activity
//1-构造意图
Intent intent=new Intent(this,ZhuCeActivity.class);
//启动带返回信息的Activity int 请求码:标识请求
startActivityForResult(intent,1);
}
//三个成员变量
String usercode;
String username;
String password;
//重写处理返回信息的回调方法
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//处理返回信息
//1-判断请求码
if (requestCode==1)
{
//2-判断结果码
if (resultCode==RESULT_OK)
{
//接收返回的注册信息
usercode=data.getStringExtra("code");
username=data.getStringExtra("name");
password=data.getStringExtra("mima");
}
}
}
//登录的按钮
public void bt4_on(View v)
{
//1-取得填写信息
//2-判断是否正确填写
String usecode=et_usercode.getText().toString();
String password1=et_password.getText().toString();
if (usecode.trim().length()==0||password.trim().length()==0)
{
Toast.makeText(MainActivity.this, "用户代码和密码都不能为空", Toast.LENGTH_SHORT).show();
return;
}
//3-判断有没有注册信息
//1)没有注册信息
//2)用户信息尚未注册
if (usercode==null||(usercode!=null&& !usercode.equals(usecode)))
{
Toast.makeText(MainActivity.this, "用户未注册", Toast.LENGTH_SHORT).show();
return;
}
//4-判断注册信息与登录信息是否匹配
if (!password.equals(password1))
{
Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_SHORT).show();
return;
}
else
{
//可以登陆了
Toast.makeText(MainActivity.this, "验证成功", Toast.LENGTH_SHORT).show();
//跳转到主界面
Intent intent=new Intent(this,TextActivity.class);
//传递数据
//把数据放到意图里
intent.putExtra("usercode",usercode);
intent.putExtra("username",username);
startActivity(intent);
}
finish();//直接退出
}
}
activity_main

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" 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="com.example.lenovo.testapp1.MainActivity" android:orientation="vertical"> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="用户代码" android:id="@+id/et_usecode"/> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="密码" android:inputType="numberPassword" android:id="@+id/et_password"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="登录" android:onClick="bt4_on"/> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="注册" android:onClick="bt1_on"/> </LinearLayout> </LinearLayout>
注册

package com.example.lenovo.testapp1;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class ZhuCeActivity extends AppCompatActivity {
EditText et_usercode;
EditText et_username;
EditText et_psssword;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_zhu_ce);
et_usercode=(EditText)findViewById(R.id.et_usercode);
et_username=(EditText)findViewById(R.id.et_username);
et_psssword=(EditText)findViewById(R.id.et_password);
}
//View表示事件的发起者
public void bt3_on(View v)
{
//返回注册信息
//用户代码取得
String usercode=et_usercode.getText().toString();
if (usercode==null||usercode.trim().length()==0)
{
Toast.makeText(ZhuCeActivity.this,"请正确填写用户代码",Toast.LENGTH_SHORT).show();
return;
}
String username=et_username.getText().toString();
if (username==null||username.trim().length()==0)
{
Toast.makeText(ZhuCeActivity.this,"请正确填写用户名称",Toast.LENGTH_SHORT).show();
return;
}
String password=et_psssword.getText().toString();
if (password==null||password.trim().length()==0)
{
Toast.makeText(ZhuCeActivity.this,"请正确填写密码",Toast.LENGTH_SHORT).show();
return;
}
Intent intent=new Intent();
intent.putExtra("code", usercode);
intent.putExtra("name", username);
intent.putExtra("mima",password);
//设置返回信息:1-结果码,2-携带数据的意图
setResult(RESULT_OK,intent);
finish();
}
public void bt2_on(View v)
{
setResult(RESULT_CANCELED,null);//取消
finish();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现