本网站(662p.com)打包出售,且带程序代码数据,662p.com域名,程序内核采用TP框架开发,需要联系扣扣:2360248666 /wx:lianweikj
精品域名一口价出售:1y1m.com(350元) ,6b7b.com(400元) , 5k5j.com(380元) , yayj.com(1800元), jiongzhun.com(1000元) , niuzen.com(2800元) , zennei.com(5000元)
需要联系扣扣:2360248666 /wx:lianweikj
android实现简易登录注册界面及逻辑设计
飘飘悠悠 · 343浏览 · 发布于2021-06-23 +关注

这篇文章主要为大家详细介绍了android实现简易登录注册界面及逻辑设计,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了android实现登录注册界面及逻辑设计,供大家参考,具体内容如下

1. 第一步 新建文件(相信各位码农一定会这一步)略。

2. 第二步 登录注册界面设计

登录界面主要包括几大控件,如登录、注册按钮,账号(Button)、密码输入框(Editext)、复选框等。可以利用shape参数对控件进行美化。界面设计可以线性布局嵌套使用,这样可以很好的对控件调整,美化界面。

注册界面主要包括EdiText、Radio button、button、checkbox等,与登录界面相同,可以利用shape参数改变编辑框的颜色和边角,使得界面简洁而美化。

效果如下:

3. 第三步 注册界面逻辑设计

注册界面的逻辑功能为将注册的信息返回给登录界面(以及存入数据库),逻辑设计如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

public class RegisterActivity extends AppCompatActivity {

    private String sex, infor;

    @Override

    protected void onCreate(Bundle saveInstanceState) {

        super.onCreate(saveInstanceState);

        setContentView(R.layout.activity_main2);

 /**

  *获取控件的id

  **/

        RadioGroup gender = (RadioGroup) findViewById(R.id.group);

        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 == male.getId()) {

                    sex = male.getText().toString();

                } else {

                    sex = female.getText().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 = spinner.getSelectedItem().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();

                    } else {

                        Toast.makeText(Main2Activity.this, "请确认密码一致", Toast.LENGTH_SHORT).show();

                    }

                } else {

                    Toast.makeText(Main2Activity.this, "请将信息填写完整", Toast.LENGTH_SHORT).show();

                }

            }

        });

    }

}

4. 第四步 登录界面逻辑设计

登录面的逻辑功能主要是获取注册界面返回的信息并填入编辑框,和将账号密码进行匹配,实现登录功能;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

public class MainActivity extends AppCompatActivity {

 /**

  * 将注册界面返回的账号密码填入编辑框

  **/

    @Override

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == 0x11 && resultCode == 0x11) {

            Bundle bundle = data.getExtras();

            String username = bundle.getString("site1");

            String password = bundle.getString("site2");

            String information=bundle.getString("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) {

        super.onCreate(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 = ET_username.getText().toString();

                String inpassword = ET_password.getText().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文件里注册。


相关推荐

android下vulkan与opengles纹理互通

talkchan · 1175浏览 · 2020-11-23 10:37:39
Android 使用RecyclerView实现轮播图

奔跑的男人 · 2174浏览 · 2019-05-09 17:11:13
微软发布新命令行工具 Windows Terminal

吴振华 · 868浏览 · 2019-05-09 17:15:04
Facebook 停止屏蔽部分区块链广告

· 754浏览 · 2019-05-09 17:20:08
加载中

0评论

评论
分类专栏
小鸟云服务器
扫码进入手机网页