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

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

Android EditTextView 實(shí)現(xiàn)帶空格分隔的輸入(電話號(hào)碼,銀行卡)

2019-10-22 18:15:48
字體:
供稿:網(wǎng)友

電話號(hào)碼輸入框需求:

  • 三位,七位后有空格
  • 刪除倒數(shù)第四,第八位會(huì)將空格也刪除

使用TextWatcher

When an object of a type is attached to an Editable, its methods will be called when the text is changed.就是說,只要是一個(gè)可編輯的文本設(shè)置了TextWatcher,當(dāng)文本發(fā)生變化時(shí),TextWatcher里的方法將會(huì)被調(diào)用.

其實(shí)不難,看了網(wǎng)上搜索到的例子,思路繞了點(diǎn),這邊做一份自己的記錄

import android.text.Editable;import android.text.TextWatcher;import android.util.Log;import android.widget.EditText;/** * @desc * @autor Xemenes * @time 2017/5/12 10:18 */public class PhoneNumberTextWatcher implements TextWatcher {  EditText editText;  int lastContentLength = 0;  boolean isDelete = false;  public PhoneNumberTextWatcher(EditText editText) {    this.editText = editText;  }  @Override  public void beforeTextChanged(CharSequence s, int start, int count, int after) {  }  @Override  public void onTextChanged(CharSequence s, int start, int before, int count) {    StringBuffer sb = new StringBuffer(s);    //是否為輸入狀態(tài)    isDelete = s.length() > lastContentLength ? false : true;    //輸入是第4,第9位,這時(shí)需要插入空格    if(!isDelete&& (s.length() == 4||s.length() == 9)){      if(s.length() == 4) {        sb.insert(3, " ");      }else {        sb.insert(8, " ");      }      setContent(sb);    }    //刪除的位置到4,9時(shí),剔除空格    if (isDelete && (s.length() == 4 || s.length() == 9)) {      sb.deleteCharAt(sb.length() - 1);      setContent(sb);    }    lastContentLength = sb.length();  }  @Override  public void afterTextChanged(Editable s) {  }  /**   * 添加或刪除空格EditText的設(shè)置   *   * @param sb   */  private void setContent(StringBuffer sb) {    editText.setText(sb.toString());    //移動(dòng)光標(biāo)到最后面    editText.setSelection(sb.length());  }}

總結(jié)

以上所述是小編給大家介紹的Android EditTextView 實(shí)現(xiàn)帶空格分隔的輸入(電話號(hào)碼,銀行卡),希望對(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ā)表
主站蜘蛛池模板: 新野县| 冷水江市| 太原市| 河南省| 潢川县| 宁陵县| 类乌齐县| 明水县| 鹿邑县| 潜山县| 南昌市| 漳平市| 阜平县| 乌苏市| 安徽省| 鞍山市| 鞍山市| 旺苍县| 沅陵县| 望都县| 那坡县| 景谷| 河津市| 商水县| 类乌齐县| 太仓市| 蕉岭县| 襄垣县| 丰镇市| 广东省| 东乡族自治县| 亳州市| 长顺县| 奎屯市| 南雄市| 赤峰市| 安吉县| 巧家县| 海盐县| 垦利县| 海晏县|