android实现简易登录注册界⾯及逻辑设计
本⽂实例为⼤家分享了android实现登录注册界⾯及逻辑设计,供⼤家参考,具体内容如下
1. 第⼀步新建⽂件(相信各位码农⼀定会这⼀步)略。
2. 第⼆步登录注册界⾯设计
登录界⾯主要包括⼏⼤控件,如登录、注册按钮,账号(Button)、密码输⼊框(Editext)、复选框等。可以利⽤shape参数对控件进⾏美化。界⾯设计可以线性布局嵌套使⽤,这样可以很好的对控件调整,美化界⾯。
注册界⾯主要包括EdiText、Radio button、button、checkbox等,与登录界⾯相同,可以利⽤shape参数改变编辑框的颜⾊和边⾓,使得界⾯简洁⽽美化。
效果如下:
3. 第三步注册界⾯逻辑设计
注册界⾯的逻辑功能为将注册的信息返回给登录界⾯(以及存⼊数据库),逻辑设计如下:
public class RegisterActivity extends AppCompatActivity {
private String sex, infor;
@Override
protected void onCreate(Bundle saveInstanceState) {
setContentView(R.layout.activity_main2);
/**
*获取控件的id
**/
RadioGroup gender = (RadioGroup) findViewById(up);
final RadioButton male = (RadioButton) findViewById(R.id.radioButton);
final RadioButton female = (RadioButton) findViewById(R.id.radioButton2);
final Spinner spinner = (Spinner) findViewById(R.id.spinner);
final CheckBox c1 = (CheckBox) findViewById(R.id.checkBox);
final CheckBox c2 = (CheckBox) findViewById(R.id.checkBox2);
final CheckBox c3 = (CheckBox) findViewById(R.id.checkBox3);
final CheckBox c4 = (CheckBox) findViewById(R.id.checkBox4);
Button button1 = (Button) findViewById(R.id.but);
/**
* 获取checkbox⾥勾选的性别
**/
gender.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if (checkedId == Id()) {
sex = Text().toString();
} else {
sex = Text().toString();
}
}
});
/**
* 设置注册按钮的事件,实现从注册界⾯到登录界⾯的跳转
**/
Button buttton1 = (Button) findViewById(R.id.but);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
/**
* 将checkbox⾥的选中的值赋给hobby
**/
String hobby = " ";
if (c1.isChecked()) {
hobby += c1.getText().toString();
}
if (c2.isChecked()) {
hobby += c2.getText().toString();
}
if (c3.isChecked()) {
hobby += c3.getText().toString();
}
if (c4.isChecked()) {
hobby += c4.getText().toString();
}
/**
* 将Spinner⾥的值赋给spin,将所有的信息法如infor中
**/
String spin = SelectedItem().toString();
String site1 = ((EditText) findViewById(R.id.username1)).getText().toString();
String site2 = ((EditText) findViewById(R.id.password1)).getText().toString();
String site3 = ((EditText) findViewById(R.id.password2)).getText().toString();
infor = "⽤户:" + site1 + "\n性别:" + sex + "\n学历:" + spin + "\n爱好:" + hobby;
/**
* 判断编辑框内容是否为空
**/
if (!"".equals(site1) && !"".equals(site2) && !"".equals(site3)) {
Toast.makeText(Main2Activity.this, infor, Toast.LENGTH_LONG).show();
if (site2.equals(site3)) {
Intent intent = new Intent(RegisterActivity.this, MainActivity.class);
/**
* 将注册的信息打包,通过intent传给登录程序
**/
Bundle bundle = new Bundle();
bundle.putCharSequence("site1", site1);
bundle.putCharSequence("site2", site2);
bundle.putCharSequence("site3", site3);
bundle.putCharSequence("infor", infor);
intent.putExtras(bundle);
setResult(0x11, intent);
finish();
android radiogroup} else {
Toast.makeText(Main2Activity.this, "请确认密码⼀致", Toast.LENGTH_SHORT).show();
}
} else {
Toast.makeText(Main2Activity.this, "请将信息填写完整", Toast.LENGTH_SHORT).show();
}
}
});
}
}
4. 第四步登录界⾯逻辑设计
登录⾯的逻辑功能主要是获取注册界⾯返回的信息并填⼊编辑框,和将账号密码进⾏匹配,实现登录功能;public class MainActivity extends AppCompatActivity {
/**
* 将注册界⾯返回的账号密码填⼊编辑框
**/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 0x11 && resultCode == 0x11) {
Bundle bundle = Extras();
String username = String("site1");
String password = String("site2");
String String("infor");
EditText et_username = (EditText) findViewById(R.id.username);
EditText et_password = (EditText) findViewById(R.id.password);
et_username.setText(username);
et_password.setText(password);
}
}
@Override
protected void onCreate(Bundle saveInstanceState) {
setContentView(R.layout.activity_main);
Button login = (Button) findViewById(R.id.login);
final EditText ET_username = (EditText) findViewById(R.id.username);
final EditText ET_password = (EditText) findViewById(R.id.password);
Button btn = (Button) findViewById(R.id.btn);
/**
* 给登录按钮设置单击事件
**/
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String inusername = Text().toString();
String inpassword = Text().toString();
if (inusername != null && inpassword != null) {
if (inusername.equals("admin") && inpassword.equals("admin")){
Intent intent = new Intent(MainActivity.this, SuccessActivity.class);
startActivity(intent);
} else {
new AlertDialog.Builder(MainActivity.this).setTitle("登陆信息有误").setMessage("请输⼊正确的账户名与密码")
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
}).show();
}
}
else {
Toast.makeText(MainActivity.this, "请输⼊⽤户名和密码", Toast.LENGTH_SHORT).show();
}
}
});
/**
* 为注册按钮设置单机事件
**/
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, RegisterActivity.class);
startActivityForResult(intent, 0x11);
}
});
}
}
*5. 第五步完善⼯作
具体的简易登录注册逻辑代码完成,接下来就可以为其设计启动界⾯和登录成功界⾯,注意:Activity组件需要在Mainfest⽂件⾥注册。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论