iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >使用EditText怎么限制小数点前后的位数
  • 281
分享到

使用EditText怎么限制小数点前后的位数

edittextedi 2023-05-31 06:05:34 281人浏览 八月长安
摘要

今天就跟大家聊聊有关使用EditText怎么限制小数点前后的位数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在EditText输入数字的时候,通常我们需要限制小数点前后位数。比如金

今天就跟大家聊聊有关使用EditText怎么限制小数点前后的位数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

在EditText输入数字的时候,通常我们需要限制小数点前后位数。比如金额输入一般我们需要限制小数点后面最多2位。我们可以通过 TextWatcher 实现。

public class MyWatcher implements TextWatcher {  private int beforeDot;  private int afterDot;    public MyWatcher(int beforeDot, int afterDot) {    this.beforeDot = beforeDot;    this.afterDot = afterDot;  }  @Override  public void beforeTextChanged(CharSequence s, int start, int count, int after) {  }  @Override  public void onTextChanged(CharSequence s, int start, int before, int count) {  }  @Override  public void afterTextChanged(Editable s) {    judge(s);  }  private void judge(Editable editable) {    String temp = editable.toString();    int posDot = temp.indexOf(".");    //直接输入小数点的情况    if (posDot == 0) {      editable.insert(0, "0");      return;    }    //连续输入0    if (temp.equals("00")) {      editable.delete(1, 2);      return;    }    //输入"08" 等类似情况    if (temp.startsWith("0") && temp.length() > 1 && (posDot == -1 || posDot > 1)) {      editable.delete(0, 1);      return;    }    //不包含小数点 不限制小数点前位数    if (posDot < 0 && beforeDot == -1) {      //do nothing 仅仅为了理解逻辑而已      return;    } else if (posDot < 0 && beforeDot != -1) {      //不包含小数点 限制小数点前位数      if (temp.length() <= beforeDot) {        //do nothing 仅仅为了理解逻辑而已      } else {        editable.delete(beforeDot, beforeDot + 1);      }      return;    }    //如果包含小数点 限制小数点后位数    if (temp.length() - posDot - 1 > afterDot && afterDot != -1) {      editable.delete(posDot + afterDot + 1, posDot + afterDot + 2);//删除小数点后多余位数    }  }}

--结束END--

本文标题: 使用EditText怎么限制小数点前后的位数

本文链接: https://www.lsjlt.com/news/223884.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用EditText怎么限制小数点前后的位数
    今天就跟大家聊聊有关使用EditText怎么限制小数点前后的位数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在EditText输入数字的时候,通常我们需要限制小数点前后位数。比如金...
    99+
    2023-05-31
    edittext edi
  • 利用EditText怎么限制输入的数字并精确到小数点后1位
    利用EditText怎么限制输入的数字并精确到小数点后1位?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在EditText的布局文件里面设置:android:inputType...
    99+
    2023-05-31
    edittext edi
  • Python怎么强制限定小数点位数
    小编给大家分享一下Python怎么强制限定小数点位数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!利用''%.af''%b——其中...
    99+
    2023-06-14
  • python中小数点后的位数问题怎么解决
    这篇文章主要介绍“python中小数点后的位数问题怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中小数点后的位数问题怎么解决”文章能帮助大家解决问题。python中小数点后的位数...
    99+
    2023-07-06
  • vue怎么使用directive限制表单输入整数、小数
    这篇文章主要介绍“vue怎么使用directive限制表单输入整数、小数”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue怎么使用directive限制表单输入整数、小数”文章能帮助大家解决问题。...
    99+
    2023-07-05
  • 小数的表示方法之怎么使用定点数
    本篇内容主要讲解“小数的表示方法之怎么使用定点数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“小数的表示方法之怎么使用定点数”吧!在数字信号处理中往往都需要进行...
    99+
    2022-10-19
  • Java中小数点后多余的0怎么使用正则表达式实现删除
    这篇文章给大家介绍Java中小数点后多余的0怎么使用正则表达式实现删除,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。具体如下:package test;public class TestString { public...
    99+
    2023-05-31
    java 正则表达式 ava
  • java怎么使用正则表达式限制特殊字符的个数
    这篇文章给大家分享的是有关java怎么使用正则表达式限制特殊字符的个数的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用正则表达式限制特殊字符的个数package com.l.dubbo.service...
    99+
    2023-06-21
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作