快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

AndroidEditText实现输入金额类型详解-创新互联

前言

成都创新互联公司始终坚持【策划先行,效果至上】的经营理念,通过多达十多年累计超上千家客户的网站建设总结了一套系统有效的全网整合营销推广解决方案,现已广泛运用于各行各业的客户,其中包括:成都垃圾桶等企业,备受客户赞美。

众所周知,Android中的editText默认的属性里面是没有金额类型的,所以要实现这个功能我们就必须自己动手丰衣足食。下面话不多说了,来一起看看详细的介绍吧。

一.EditText只允许输入数字、小数点。

首先要知道金额有两部分构成,整数部分和小数部分,要实现只输入数字和小数点很简单。自己查能很容易查到。

把type设置成InputType.TYPE_NUMBER_FLAG_DECIMAL|InputType.TYPE_CLASS_NUMBER 就行

那这样做有个缺点,小数部分可以有很多位。而我们知道金额类型的小数部分只能有两位,所以这个方法不合适。

二.设置字符过滤

网上有很多文章都是这样写。

mEdit.setFilters(new InputFilter[]{new InputFilter() {
 @Override
 public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
  if(source.equals(".") && dest.toString().length() == 0){
   return "0.";
  }
  if(dest.toString().contains(".")){
   int index = dest.toString().indexOf(".");
   int mlength = dest.toString().substring(index).length();
   if(mlength == 3){
    return "";
   }
  }
  return null;
 }
}});

网站名称:AndroidEditText实现输入金额类型详解-创新互联
转载源于:http://6mz.cn/article/eegdi.html

其他资讯