日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

EditText 自动保留两位小数

發布時間:2025/3/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EditText 自动保留两位小数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

package com.example.astart;

import java.text.DecimalFormat;

import android.content.Context;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.view.View.OnFocusChangeListener;
import android.widget.EditText;

public class MyUtils {
?? ?/**
?? ? * 格式化小數
?? ? * @param context
?? ? * @param paEditTexts
?? ? * @param limit 保留小數位數
?? ? */
?? ?public static void setEditTextAccuracys(final Context context,final int limit,EditText...paEditTexts){
?? ??? ?if(paEditTexts == null) return;
?? ??? ?for (int i = 0; i < paEditTexts.length; i++) {
?? ??? ??? ?setEditTextAccuracy(context,paEditTexts[i],limit);
?? ??? ?}
?? ?}
?? ?
?? ?/**
?? ? * 格式化小數
?? ? * @param context
?? ? * @param editText
?? ? * @param limit 0 不限制小數位數
?? ? */
?? ?private static void setEditTextAccuracy(final Context context,final EditText editText, final int limit) {
?? ? ? ?editText.addTextChangedListener(new TextWatcher() {
?? ? ? ? ? ?@Override
?? ? ? ? ? ?public void onTextChanged(CharSequence s, int start, int before, int count) {
?? ? ? ? ? ? ? ?if(limit != 0){
?? ? ? ? ? ? ? ??? ?/**
?? ? ? ? ? ? ? ??? ? * 限制輸入金額最多為 limit 位小數
?? ? ? ? ? ? ? ??? ? */
?? ? ? ? ? ? ? ??? ?if (s.toString().contains(".")) {
?? ? ? ? ? ? ? ??? ??? ?if (s.length() - 1 - s.toString().indexOf(".") > limit) {
?? ? ? ? ? ? ? ??? ??? ??? ?s = s.toString().subSequence(0,
?? ? ? ? ? ? ? ??? ??? ??? ??? ??? ?s.toString().indexOf(".") + limit + 1);
?? ? ? ? ? ? ? ??? ??? ??? ?editText.setText(s);
?? ? ? ? ? ? ? ??? ??? ??? ?editText.setSelection(s.length());
?? ? ? ? ? ? ? ??? ??? ?}
?? ? ? ? ? ? ? ??? ?}
?? ? ? ? ? ? ? ?}
?? ? ? ? ? ? ? ?/**
?? ? ? ? ? ? ? ? * 第一位輸入小數點的話自動變換為 0.
?? ? ? ? ? ? ? ? */
?? ? ? ? ? ? ? ?if (s.toString().trim().substring(0).equals(".")) {
?? ? ? ? ? ? ? ? ? ?s = "0" + s;
?? ? ? ? ? ? ? ? ? ?editText.setText(s);
?? ? ? ? ? ? ? ? ? ?editText.setSelection(2);
?? ? ? ? ? ? ? ?}

?? ? ? ? ? ? ? ?/**
?? ? ? ? ? ? ? ? * 避免重復輸入小數點前的0 ,沒有意義
?? ? ? ? ? ? ? ? */
?? ? ? ? ? ? ? ?if (s.toString().startsWith("0")
?? ? ? ? ? ? ? ? ? ? ? ?&& s.toString().trim().length() > 1) {
?? ? ? ? ? ? ? ? ? ?if (!s.toString().substring(1, 2).equals(".")) {
?? ? ? ? ? ? ? ? ? ??? ?editText.setText(s.subSequence(0, 1));
?? ? ? ? ? ? ? ? ? ??? ?editText.setSelection(1);
?? ? ? ? ? ? ? ? ? ? ? ?return;
?? ? ? ? ? ? ? ? ? ?}
?? ? ? ? ? ? ? ?}
?? ? ? ? ? ? ? ?
?? ? ? ? ? ?}

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

?? ? ? ? ? ?}
?? ? ? ? ? ?
?? ??? ??? ?@Override
?? ??? ??? ?public void afterTextChanged(Editable edit) {
?? ??? ??? ?}
?? ? ? ?});
?? ? ? ?
?? ? ? ?if(limit != 0){
?? ? ? ??? ?editText.setOnFocusChangeListener(new OnFocusChangeListener() {
?? ? ? ??? ??? ?
?? ? ? ??? ??? ?@Override
?? ? ? ??? ??? ?public void onFocusChange(View view, boolean hasFocus) {
?? ? ? ??? ??? ??? ?if(!hasFocus){
?? ? ? ??? ??? ??? ??? ?if(!editText.getText().toString().isEmpty()){
?? ? ? ??? ??? ??? ??? ??? ?try {
?? ? ? ??? ??? ??? ??? ??? ??? ?double value = Double.parseDouble(editText.getText().toString());
?? ? ? ??? ??? ??? ??? ??? ??? ?DecimalFormat format = new DecimalFormat("0.00");
?? ? ? ??? ??? ??? ??? ??? ??? ?editText.setText(format.format(value));
?? ? ? ??? ??? ??? ??? ??? ?} catch (Exception e) {
?? ? ? ??? ??? ??? ??? ??? ??? ?e.printStackTrace();
?? ? ? ??? ??? ??? ??? ??? ?}
?? ? ? ??? ??? ??? ??? ?}
?? ? ? ??? ??? ??? ?}
?? ? ? ??? ??? ?}
?? ? ? ??? ?});
?? ? ? ?}
?? ? ? ?
?? ?}
}
?

?

使用

?

import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;

public class MainActivity extends Activity {
private EditText monkey;
?? ?@Override
?? ?protected void onCreate(Bundle savedInstanceState) {
?? ??? ?super.onCreate(savedInstanceState);
?? ??? ?setContentView(R.layout.activity_main);
?? ??? ?monkey=(EditText) findViewById(R.id.et_monkey);
?? ??? ?MyUtils.setEditTextAccuracys(this, 2, monkey);

????//上下文,最多保留幾位小數,EditText控件名
?? ?}


}

轉載于:https://my.oschina.net/u/2531348/blog/726851

總結

以上是生活随笔為你收集整理的EditText 自动保留两位小数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 操人视频在线观看 | 一级二级毛片 | 欧美性受xxx黑人xyx性爽 | 蜜臀在线一区二区三区 | 国产精品探花视频 | 成人v片 | 国语av在线 | 一区二区三区亚洲视频 | youjizz日本人| 热re99久久精品国产99热 | 日本吃奶摸下激烈网站动漫 | 天天舔天天爽 | 9191久久 | 亚洲免费一级 | 日韩成人在线免费观看 | 波多野结衣日韩 | 日本人和亚洲人zjzjhd | 日韩精品成人无码专区免费 | 青青视频在线播放 | 黄色视屏在线看 | 四虎在线看片 | 又黄又爽的视频 | 风流僵尸艳片a级 | 黄色一集片 | 日韩字幕在线 | 波多野结衣视频网站 | 蛇女欲潮性三级 | 久久亚洲AV成人无码国产野外 | 免费看欧美一级特黄a大片 国产免费的av | 国产丰满大乳奶水在线视频 | 国产精品综合网 | 国产东北露脸精品视频 | 亚洲成av人片在www色猫咪 | 1000部啪啪 | 在线视频一区二区 | 国产美女视频一区 | 激情综合网五月激情 | 午夜爱爱毛片xxxx视频免费看 | 成年人视频在线 | 男人的天堂在线视频 | 在线观看免费人成视频 | 国产麻豆一区二区三区 | 久操久 | 8x8ⅹ国产精品一区二区二区 | 中日韩中文字幕 | 欧美超逼视频 | 交专区videossex农村 | 久久r精品| 色悠悠在线视频 | 欧美性生交xxxxx久久久 | 人人草人人爽 | 九九一级片 | 三度诱惑免费版电影在线观看 | 亚洲精品视频播放 | youjizz日韩| 黄色录像三级 | heyzo北岛玲在线播放 | 黄大色黄大片女爽一次 | 综合成人在线 | 亚洲黄色在线观看 | 亚洲图片综合网 | 欧美日韩一区二区在线观看 | 伊人www| 欧美色欧美| 天天看黄色 | 国产在线播放一区二区三区 | 国产精品无码久久久久 | 69人妻一区二区三区 | 久久国语精品 | 日韩短视频 | 五月婷婷六月婷婷 | 欧美xxxbbb | 黄色片免费 | 一二三四精品 | 性高潮久久久久久久 | 亚洲AV无码久久精品国产一区 | 色八戒av| 免费av网站大全 | 欧美高清v| 色视频在线观看免费 | 久久www视频 | 2019中文字幕在线视频 | 男人的天堂一区 | 美女av免费看 | 欧美特级黄色大片 | 日韩欧美成人一区二区三区 | 色综合天天网 | 精品人妻av一区二区 | 亚洲一区二区在线观看视频 | 91天天射 | 国产一级大片 | 3d动漫精品啪啪一区二区免费 | 极品美女扒开粉嫩小泬 | 中文字幕日韩亚洲 | 人人爱人人艹 | 曰批又黄又爽免费视频 | 亚洲一区二区三区激情 | 国产又粗又猛又爽又黄的 | 国产女人高潮时对白 |