国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android 自定義輸入手機(jī)號(hào)自動(dòng)添加分隔符

2019-10-23 18:28:47
字體:
供稿:網(wǎng)友

比較簡(jiǎn)單的一個(gè)控件,就是加些邏輯處理而已,以前貌似是直接監(jiān)聽的,封裝起來方便點(diǎn)

public class AccountTxtView extends android/212159.html">android.support.v7.widget.AppCompatEditText {  private final char CUT = '-';  public AccountTxtView(Context context) {    super(context);  }  public AccountTxtView(Context context, AttributeSet attrs) {    super(context, attrs);  }  public AccountTxtView(Context context, AttributeSet attrs, int defStyleAttr) {    super(context, attrs, defStyleAttr);  }  @Override  protected void onTextChanged(CharSequence text, int start, int lengthBefore, int lengthAfter) {    if (text == null || text.length() == 0)      return;    StringBuilder sb = new StringBuilder();    for (int i = 0; i < text.length(); i++) {//添加分割符      if (i != 3 && i != 8 && text.charAt(i) == CUT) {        continue;      } else {        sb.append(text.charAt(i));        if ((sb.length() == 4 || sb.length() == 9)            && sb.charAt(sb.length() - 1) != CUT) {          sb.insert(sb.length() - 1, CUT);        }      }    }    //防止多次設(shè)置值    if (!sb.toString().equals(text.toString())) {      int index = start + 1;      if (sb.charAt(start) == CUT) {        if (lengthBefore == 0) {          index++;        } else {          index--;        }      } else {        if (lengthBefore == 1) {          index--;        }      }      setText(sb.toString());      setSelection(index);    }else{//刪除時(shí)候判斷      String line = text.subSequence(text.length() - 1, text.length()).toString();      if (line.equals(String.valueOf(CUT))) {//如果刪除碰到‘-'符號(hào),則默認(rèn)去除        sb.deleteCharAt(text.subSequence(0, text.length() - 1).length());        setText(sb.toString());        setSelection(sb.length());      }    }  }  public String getPhone() {    String result = null;    String val = getText().toString();    if (val == null || val.isEmpty())      return "";    result = val.replace(String.valueOf(CUT), "");    return result;  }}

使用也簡(jiǎn)單

android,添加分隔符,輸入手機(jī)號(hào)

然后效果就出來了

android,添加分隔符,輸入手機(jī)號(hào)

輸入第四個(gè)的時(shí)候自動(dòng)填充‘-'分隔符,然后刪除的時(shí)候自動(dòng)刪除‘-'分隔符

以上所述是小編給大家介紹的Android 自定義輸入手機(jī)號(hào)自動(dòng)添加分隔符,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VEVB武林網(wǎng)網(wǎng)站的支持!


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到Android開發(fā)頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 建阳市| 罗城| 双柏县| 攀枝花市| 青浦区| 乌兰浩特市| 通州区| 南岸区| 罗山县| 梅州市| 黑水县| 海原县| 清流县| 缙云县| 周宁县| 文安县| 通海县| 星子县| 师宗县| 沁水县| 昭觉县| 南投县| 泰宁县| 宿州市| 嘉禾县| 陇南市| 临漳县| 延吉市| 新蔡县| 石门县| 永吉县| 故城县| 东乡族自治县| 浑源县| 枣阳市| 临西县| 阿拉善左旗| 谷城县| 湘乡市| 安远县| 怀来县|