欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

android實現(xiàn)簡易登錄注冊界面及邏輯設(shè)計

 更新時間:2021年06月23日 16:10:07   作者:不會飛的fish。。  
這篇文章主要為大家詳細(xì)介紹了android實現(xiàn)簡易登錄注冊界面及邏輯設(shè)計,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了android實現(xiàn)登錄注冊界面及邏輯設(shè)計,供大家參考,具體內(nèi)容如下

1. 第一步 新建文件(相信各位碼農(nóng)一定會這一步)略。

2. 第二步 登錄注冊界面設(shè)計

登錄界面主要包括幾大控件,如登錄、注冊按鈕,賬號(Button)、密碼輸入框(Editext)、復(fù)選框等。可以利用shape參數(shù)對控件進(jìn)行美化。界面設(shè)計可以線性布局嵌套使用,這樣可以很好的對控件調(diào)整,美化界面。

注冊界面主要包括EdiText、Radio button、button、checkbox等,與登錄界面相同,可以利用shape參數(shù)改變編輯框的顏色和邊角,使得界面簡潔而美化。

效果如下:

3. 第三步 注冊界面邏輯設(shè)計

注冊界面的邏輯功能為將注冊的信息返回給登錄界面(以及存入數(shù)據(jù)庫),邏輯設(shè)計如下:

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();
                }
            }
        });
 /**
  * 設(shè)置注冊按鈕的事件監(jiān)聽器,實現(xiàn)從注冊界面到登錄界面的跳轉(zhuǎn)
  **/
        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學(xué)歷:" + spin + "\n愛好:" + hobby;
  /**
   * 判斷編輯框內(nèi)容是否為空
   **/
                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, "請確認(rèn)密碼一致", Toast.LENGTH_SHORT).show();
                    }
                } else {
                    Toast.makeText(Main2Activity.this, "請將信息填寫完整", Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
}

4. 第四步 登錄界面邏輯設(shè)計

登錄面的邏輯功能主要是獲取注冊界面返回的信息并填入編輯框,和將賬號密碼進(jìn)行匹配,實現(xiàn)登錄功能;

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);
 /**
  * 給登錄按鈕設(shè)置單擊事件監(jiān)聽器
  **/
        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();
                }
            }
        });

    /**
     * 為注冊按鈕設(shè)置單機事件監(jiān)聽器
     **/
        btn.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this, RegisterActivity.class);
                startActivityForResult(intent, 0x11);
            }
        });

    }
  
}

*5. 第五步 完善工作

具體的簡易登錄注冊邏輯代碼完成,接下來就可以為其設(shè)計啟動界面和登錄成功界面,注意:Activity組件需要在Mainfest文件里注冊。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Retrofit之OKHttpCall源碼分析

    Retrofit之OKHttpCall源碼分析

    這篇文章主要介紹了Retrofit之OKHttpCall源碼分析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Android實現(xiàn)仿魅族日歷首頁功能

    Android實現(xiàn)仿魅族日歷首頁功能

    這篇文章主要介紹了Android實現(xiàn)仿魅族日歷首頁功能的實現(xiàn)過程以及相關(guān)代碼講解分享,對此有興趣的朋友參考下。
    2018-02-02
  • Android實現(xiàn)整理PackageManager獲取所有安裝程序信息

    Android實現(xiàn)整理PackageManager獲取所有安裝程序信息

    這篇文章主要介紹了Android實現(xiàn)整理PackageManager獲取所有安裝程序信息的方法,實例分析了Android使用PackageManager獲取安裝程序信息的具體步驟與相關(guān)技巧,需要的朋友可以參考下
    2016-01-01
  • Android仿一號店貨物詳情輪播圖動畫效果

    Android仿一號店貨物詳情輪播圖動畫效果

    這篇文章主要為大家詳細(xì)介紹了Android-仿一號店貨物詳情輪播圖動畫效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Android控件FlowLikeView實現(xiàn)點贊動畫

    Android控件FlowLikeView實現(xiàn)點贊動畫

    這篇文章主要為大家詳細(xì)介紹了一個點贊動畫的優(yōu)雅控件FlowLikeView,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Android 開源項目側(cè)邊欄菜單(SlidingMenu)使用詳解

    Android 開源項目側(cè)邊欄菜單(SlidingMenu)使用詳解

    SlidingMenu的是一種比較新的設(shè)置界面或配置界面效果,在主界面左滑或者右滑出現(xiàn)設(shè)置界面,能方便的進(jìn)行各種操作.目前有大量的應(yīng)用都在使用這一效果。如Evernote、Google+、Foursquare等,國內(nèi)的豌豆夾,人人,360手機助手等都使用SlidingMenu的界面方案。
    2016-05-05
  • Android仿微信、qq點擊右上角加號彈出操作框

    Android仿微信、qq點擊右上角加號彈出操作框

    這篇文章主要為大家詳細(xì)介紹了Android仿微信、qq點擊右上角加號彈出操作框,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Android 中cookie的處理詳解

    Android 中cookie的處理詳解

    這篇文章主要介紹了Android 中cookie的處理詳解的相關(guān)資料,主要介紹Android 中Cookie 的操作,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-08-08
  • Android自定義密碼輸入EditTextLayout

    Android自定義密碼輸入EditTextLayout

    這篇文章主要為大家詳細(xì)介紹了Android自定義密碼輸入EditTextLayout,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Android Studio生成 Flutter 模板代碼技巧詳解

    Android Studio生成 Flutter 模板代碼技巧詳解

    這篇文章主要為大家介紹了Android Studio生成 Flutter 模板代碼技巧詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10

最新評論