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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在EditText中使用numberDecimal inputType的十進制分隔符逗號(',')

在EditText中使用numberDecimal inputType的十進制分隔符逗號(',')

楊__羊羊 2019-11-27 10:55:52
輸入inputType numberDecimal中EditText使用點“?!薄W鳛樾?shù)點分隔符。在歐洲,通常使用逗號','代替。即使我的語言環(huán)境設(shè)置為德語,小數(shù)點分隔符仍為“?!薄S袥]有辦法將逗號作為小數(shù)點分隔符?
查看完整描述

3 回答

?
呼喚遠方

TA貢獻1856條經(jīng)驗 獲得超11個贊

此處提供的“數(shù)字”解決方案的一種變體:


char separator = DecimalFormatSymbols.getInstance().getDecimalSeparator();

input.setKeyListener(DigitsKeyListener.getInstance("0123456789" + separator));

考慮到語言環(huán)境分隔符。


查看完整回答
反對 回復(fù) 2019-11-27
?
鳳凰求蠱

TA貢獻1825條經(jīng)驗 獲得超4個贊

EditText的以下代碼貨幣掩碼($ 123,125.155)


Xml布局


  <EditText

    android:inputType="numberDecimal"

    android:layout_height="wrap_content"

    android:layout_width="200dp"

    android:digits="0123456789.,$" />


EditText testFilter=...

testFilter.addTextChangedListener( new TextWatcher() {

        boolean isEdiging;

        @Override public void onTextChanged(CharSequence s, int start, int before, int count) { }

        @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { }


        @Override public void afterTextChanged(Editable s) {

            if(isEdiging) return;

            isEdiging = true;


            String str = s.toString().replaceAll( "[^\\d]", "" );

            double s1 = Double.parseDouble(str);


            NumberFormat nf2 = NumberFormat.getInstance(Locale.ENGLISH);

            ((DecimalFormat)nf2).applyPattern("$ ###,###.###");

            s.replace(0, s.length(), nf2.format(s1));


            isEdiging = false;

        }

    });


查看完整回答
反對 回復(fù) 2019-11-27
  • 3 回答
  • 0 關(guān)注
  • 5532 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

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