Android EditText 輸入精確到小數(shù)點(diǎn)后2位

先上效果圖:

editText.setFilters(new InputFilter[]{new NumberDecimalFilter().setDigits(1)});

直接在代碼里面設(shè)置setFilters舍咖,setDigits就填1萎庭,

xml代碼

Activity 里面使用

NumberDecimalFilter? 自定義過濾器


import android.text.SpannableStringBuilder;

import android.text.Spanned;

import android.text.method.DigitsKeyListener;

/**

* 描述? 限制小數(shù)點(diǎn)后輸入位數(shù)

* 默認(rèn)限制小數(shù)點(diǎn)2位

* 默認(rèn)第一位輸入小數(shù)點(diǎn)時(shí)作谚,轉(zhuǎn)換為0.

* 如果起始位置為0,且第二位跟的不是".",則無法后續(xù)輸入

*/

public class NumberDecimalFilter extends DigitsKeyListener {

public NumberDecimalFilter() {

super(false, true);

? ? }

/**

* 默認(rèn)保留 2 位置小數(shù)點(diǎn)

*/

? ? private int digits =2;

? ? public NumberDecimalFiltersetDigits(int d) {

digits = d;

return this;

? ? }

@Override

? ? public CharSequencefilter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {

CharSequence out =super.filter(source, start, end, dest, dstart, dend);

? ? ? ? if (out !=null) {

source = out;

? ? ? ? ? ? start =0;

? ? ? ? ? ? end = out.length();

? ? ? ? }

int len = end - start;

? ? ? ? if (len ==0) {

return source;

? ? ? ? }

//以點(diǎn)開始的時(shí)候壤玫,自動(dòng)在前面添加0

? ? ? ? if (source.toString().equals(".") && dstart ==0) {

return "0.";

? ? ? ? }

//如果起始位置為0,且第二位跟的不是".",則無法后續(xù)輸入

? ? ? ? if (!source.toString().equals(".") && dest.toString().equals("0")) {

return "";

? ? ? ? }

int dlen = dest.length();

? ? ? ? for (int i =0; i < dstart; i++) {

if (dest.charAt(i) =='.') {

return (dlen - (i +1) + len >digits) ?

"" :

new SpannableStringBuilder(source, start, end);

? ? ? ? ? ? }

}

for (int i = start; i < end; ++i) {

if (source.charAt(i) =='.') {

if ((dlen - dend) + (end - (i +1)) >digits)

return "";

else

break;

? ? ? ? ? ? }

}

return new SpannableStringBuilder(source, start, end);

? ? }

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末边锁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子帘靡,更是在濱河造成了極大的恐慌,老刑警劉巖阔墩,帶你破解...
    沈念sama閱讀 211,123評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異瓶珊,居然都是意外死亡啸箫,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門伞芹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來忘苛,“玉大人,你說我怎么就攤上這事唱较「掏粒” “怎么了?”我有些...
    開封第一講書人閱讀 156,723評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵绊汹,是天一觀的道長(zhǎng)稽屏。 經(jīng)常有香客問我,道長(zhǎng)西乖,這世上最難降的妖魔是什么狐榔? 我笑而不...
    開封第一講書人閱讀 56,357評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮获雕,結(jié)果婚禮上薄腻,老公的妹妹穿的比我還像新娘。我一直安慰自己届案,他們只是感情好庵楷,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著楣颠,像睡著了一般尽纽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上童漩,一...
    開封第一講書人閱讀 49,760評(píng)論 1 289
  • 那天弄贿,我揣著相機(jī)與錄音,去河邊找鬼矫膨。 笑死差凹,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的侧馅。 我是一名探鬼主播危尿,決...
    沈念sama閱讀 38,904評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼馁痴!你這毒婦竟也來了谊娇?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤弥搞,失蹤者是張志新(化名)和其女友劉穎邮绿,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體攀例,經(jīng)...
    沈念sama閱讀 44,118評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡船逮,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了粤铭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片挖胃。...
    茶點(diǎn)故事閱讀 38,599評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖梆惯,靈堂內(nèi)的尸體忽然破棺而出酱鸭,到底是詐尸還是另有隱情,我是刑警寧澤垛吗,帶...
    沈念sama閱讀 34,264評(píng)論 4 328
  • 正文 年R本政府宣布凹髓,位于F島的核電站,受9級(jí)特大地震影響怯屉,放射性物質(zhì)發(fā)生泄漏蔚舀。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評(píng)論 3 312
  • 文/蒙蒙 一锨络、第九天 我趴在偏房一處隱蔽的房頂上張望赌躺。 院中可真熱鬧,春花似錦羡儿、人聲如沸礼患。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缅叠。三九已至,卻和暖如春虏冻,著一層夾襖步出監(jiān)牢的瞬間痪署,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評(píng)論 1 264
  • 我被黑心中介騙來泰國(guó)打工兄旬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留狼犯,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,286評(píng)論 2 360
  • 正文 我出身青樓领铐,卻偏偏與公主長(zhǎng)得像悯森,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子绪撵,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • pyspark.sql模塊 模塊上下文 Spark SQL和DataFrames的重要類: pyspark.sql...
    mpro閱讀 9,448評(píng)論 0 13
  • Lua 5.1 參考手冊(cè) by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 13,763評(píng)論 0 38
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi閱讀 7,306評(píng)論 0 10
  • <center>#1 Two Sum</center> link Description:Given an arr...
    鐺鐺鐺clark閱讀 2,140評(píng)論 0 3
  • 我有病瓢姻,想象力過度的病。陰雨天后十字路口一粒形狀不規(guī)則的小石子音诈,能被我聯(lián)想成一篇波瀾壯闊氣勢(shì)恢宏的現(xiàn)代史詩(shī)幻碱。 ...
    陳野亮閱讀 1,988評(píng)論 18 56