}
public contentwithspaceedittext(context context, attributeset attrs, int defstyleattr)
private void parseattributeset(context context, attributeset attrs)
private void inittype() );
}@override
public void setinputtype(int type)
} private textwatcher watcher = new textwatcher()
@override
public void ontextchanged(charsequence s, int start, int before, int count)
@override
public void aftertextchanged(editable s)
//判斷是否是在中間輸入,需要重新計算
boolean ismiddle = (start + count) < (s.length());
//在末尾輸入時,是否需要加入空格
boolean isneedspace = false;
if (!ismiddle && isspace(s.length()))
if (ismiddle || isneedspace || count > 1)
}removetextchangedlistener(watcher);
s.replace(0, s.length(), sb);
//如果是在末尾的話,或者加入的字元個數大於零的話(輸入或者貼上)
if(!ismiddle)
if (count == 0) else }}
else if (ismiddle) else
}//如果是增加
else else }}
addtextchangedlistener(watcher);
}}
};
private boolean isspace(int length)
private boolean isspacephone(int length)
}擼的別人的**,不過他的有點小瑕疵,改了改。
通道:
手機號碼格式化顯示自定義EditText控制項
自定義edittext控制項實現手機號碼自動格式化顯示,前3位數字後跟乙個空格,之後每4位數字後加乙個空格。顯示效果如下圖所示 使用方式如下所示 1.xml中放置控制項 2.activity中使用 final numberformatedittext testedittext numberforma...
Android 完美實現手機號344格式化效果
在展示手機號碼的時候,會遇到手機號按照344格式效果,這種效果的實現遇到過兩次了,也踩過了許多的坑,在這裡記錄一下乙個完美實現這種效果的方式。輸入 插入 刪除等游標位置停留比較好的互動效果。特殊下標位置 private static final int phone index 3 3 private...
js控制手機號 銀行卡輸入格式化
function formatinput inputelem else setcursorposition ctx,curpos,index delta 50 function paddingspace str d g,1 replace d d g,1 如上方法是控制輸入值的格式,當然你可以改變r...