第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 Android Studio 中將一個(gè)類用于多個(gè)輸入字段的快捷方式

在 Android Studio 中將一個(gè)類用于多個(gè)輸入字段的快捷方式

紅顏莎娜 2023-09-27 15:14:15
我已經(jīng)在一項(xiàng)活動(dòng)(或一頁(yè)......哈哈哈)中完成了注冊(cè)、登錄、重置密碼布局和代碼。他們都有電子郵件 editText e、e1 和 e2?,F(xiàn)在我為每個(gè)方法創(chuàng)建了一個(gè)方法,如下所示:private boolean valEmail() {    String mail = e.getEditText().getText().toString().trim();    if (mail.isEmpty()) {        e.setError("Field cannot be empty");        return false;    } else if (!Patterns.EMAIL_ADDRESS.matcher(mail).matches()){        e.setError("Not a valid email"); return false;    } else if (mail.length()>254) {e.setError("Email to long"); return false;}    else if (mail.length()<5) {e.setError("Email too short"); return false;}    else {        e.setError(null);        // e.setErrorEnabled(false);        return true;    }}private boolean valEmail1() {    String mail = e1.getEditText().getText().toString().trim();    if (mail.isEmpty()) {        e.setError("Field cannot be empty");        return false;    } else if (!Patterns.EMAIL_ADDRESS.matcher(mail).matches()){        e.setError("Not a valid email"); return false;    } else if (mail.length()>254) {e.setError("Email to long"); return false;}    else if (mail.length()<5) {e.setError("Email too short"); return false;}    else {        e.setError(null);        // e.setErrorEnabled(false);        return true;    }}private boolean valEmail2() {    String mail = e2.getEditText().getText().toString().trim();    if (mail.isEmpty()) {        e.setError("Field cannot be empty");        return false;    } else if (!Patterns.EMAIL_ADDRESS.matcher(mail).matches()){        e.setError("Not a valid email"); return false;    } else if (mail.length()>254) {e.setError("Email to long"); return false;}    else if (mail.length()<5) {e.setError("Email too short"); return false;}    else {        e.setError(null);        // e.setErrorEnabled(false);        return true;    }}如果您觀察,每封電子郵件(e、e1 和 e2)的方法完全相同。問(wèn)題是代碼太多,我試圖使代碼盡可能少和短。我嘗試創(chuàng)建一種方法來(lái)使用數(shù)組來(lái)處理此問(wèn)題,但沒(méi)有成功。請(qǐng)問(wèn)我該如何使用一種方法來(lái)處理這些?請(qǐng)問(wèn)有什么捷徑嗎?
查看完整描述

1 回答

?
婷婷同學(xué)_

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊

使用一種方法進(jìn)行所有電子郵件驗(yàn)證


private boolean checkEmailValidation(EditText e) { 

    String mail = e.getText().toString()

    if (mail.isEmpty()) {

        e.setError("Field cannot be empty");

        return false;

    } else if (!Patterns.EMAIL_ADDRESS.matcher(mail).matches()){

        e.setError("Not a valid email"); 

        return false;

    } else if (mail.length()>254) {

        e.setError("Email to long");

        return false;

    }else if (mail.length()<5) {

        e.setError("Email too short");

        return false;

    }else {

        e.setError(null);

        // e.setErrorEnabled(false);

        return true;

    }

 }

現(xiàn)在您可以checkEmailValidation()對(duì)所有電子郵件使用該方法。



// you can check all email like following 

if(checkEmailValidation(e.getEditText()) && checkEmailValidation(e1.getEditText()) && checkEmailValidation(e2.getEditText())) {

    // do whatever you want here when all email is ok

}else{

  // ...

}

要多次使用,activities您可以遵循兩種方式

  1. 創(chuàng)建一個(gè)BaseActivity并將其擴(kuò)展為 all activity

  2. 創(chuàng)建一個(gè)class并創(chuàng)建一個(gè)static方法。

基本活動(dòng)示例

public abstract class BaseActivity extends AppCompatActivity {


  private boolean checkEmailValidation(EditText e) { 

    String mail = e.getText().toString()

    if (mail.isEmpty()) {

        e.setError("Field cannot be empty");

        return false;

    } else if (!Patterns.EMAIL_ADDRESS.matcher(mail).matches()){

        e.setError("Not a valid email"); 

        return false;

    } else if (mail.length()>254) {

        e.setError("Email to long");

        return false;

    }else if (mail.length()<5) {

        e.setError("Email too short");

        return false;

    }else {

        e.setError(null);

        // e.setErrorEnabled(false);

        return true;

    }

  }

}

BaseActivity并在子項(xiàng)中擴(kuò)展activities如下


public class ChildActivity extends BaseActivity{

 // within this class you can use checkEmailValidation`

}

靜態(tài)函數(shù)示例


public class YourClassName{

   private static boolean checkEmailValidation(EditText e) { 

      String mail = e.getText().toString()

      if (mail.isEmpty()) {

          e.setError("Field cannot be empty");

          return false;

      } else if (!Patterns.EMAIL_ADDRESS.matcher(mail).matches()){

          e.setError("Not a valid email"); 

          return false;

      } else if (mail.length()>254) {

          e.setError("Email to long");

          return false;

      }else if (mail.length()<5) {

          e.setError("Email too short");

          return false;

      }else {

          e.setError(null);

          // e.setErrorEnabled(false);

          return true;

      }

   }

}

現(xiàn)在您可以method使用class name如下方式調(diào)用它


public class YourActivity extends AppCompatActivity{

  @Override

  protected void onCreate(@Nullable Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(getContentView());


    // you can use checkEmailValidation like 

    YourClassName.checkEmailValidation(...)


  }


}



查看完整回答
反對(duì) 回復(fù) 2023-09-27
  • 1 回答
  • 0 關(guān)注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)