Android,两个互相影响的EditText如何避免死循环_code_world的博客-程序员宅基地

技术标签: android  

 twMt1 = new TextWatcher()
                            {

                                @Override
                                public void afterTextChanged(Editable s)
                                {
                                    edt2.addTextChangedListener(twMt2);
                                }

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

                                }

                                @Override
                                public void onTextChanged(CharSequence s, int start, int before, int count)
                                {
                                    edt2.removeTextChangedListener(twMt2);
                                    int deposite = Util.parseInt(s.toString());
                                    Float discount = (selectMt.getSalsePrice()*selectMt.getMtNum())*deposite/100;
                                    edt2.setText(Util.getDoubleTwoFloat(discount));

                                }

                            };

                            twMt2 = new TextWatcher()
                            {

                                @Override
                                public void afterTextChanged(Editable s)
                                {
                                   edt.addTextChangedListener(twMt1);

                                }

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

                                @Override
                                public void onTextChanged(CharSequence s, int start, int before, int count)
                                {
                                    edt.removeTextChangedListener(twMt1);
                                    Float discount = Util.parseFloat(s.toString());
                                    int deposite=0;
                                    if((selectMt.getSalsePrice()*selectMt.getMtNum())!=0f){
                                        deposite = (int) (discount/(selectMt.getSalsePrice()*selectMt.getMtNum())*100);
                                    }
                                    Log.i("info_out",deposite+"折扣率");
                                    edt.setText(deposite+"");

                                }
                            };



                            edt.addTextChangedListener(twMt1);
                            edt2.addTextChangedListener(twMt2);


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/shenqi_sh/article/details/9412369

智能推荐

python2和python3共存环境变量_Win7和win10下python3和python2同时安装并解决pip共存问题..._weixin_39849548的博客-程序员宅基地

特别说明,本文是在Windows64位系统下进行的,32位系统请下载相应版本的安装包,安装方法类似。使用python开发,环境有Python2和 python3 两种,有时候需要两种环境切换使用,下面提供详细教程一份。1、下载python3和python2选择Downloads--->Windows,点击进入就可以看到寻找想要的python版本本文选择的是:安装scrapypip3 inst...

Python基础迭代器iter() 和 next()。_孙小星的博客-程序员宅基地

Python3 迭代器与生成器迭代器迭代是Python最强大的功能之一,是访问集合元素的一种方式。。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。迭代器有两个基本的方法:iter() 和 next()。字符串,列表或元组对象都可用于创建迭代器:实例(Py

关于JAVA核心技术(卷一)读后的思考(用户自定义类,静态域和静态方法的思考以及方法参数)..._dianjian2253的博客-程序员宅基地

用户自定义类:这部分并没有太过于困难的部分,借由代码进行复习:Employee类的定义:package com.java.EmployeeTest;import java.time.*;public class Employee { private String name; private double salary; private LocalDate h...

解决springboot整合mongoDb 出现No converter found for return value of type 的错误_wei20170501的博客-程序员宅基地

问题描述ajax可以访问controller方法,但是返回的json数据后,ajax的success接收不到,提示的错误是: java.lang.IllegalArgumentException: No converter found for return value of type: class java.util.HashMap从错误信息的原因来看,是后台返回的json数据与ajax...

zipUtil_weixin_34247032的博客-程序员宅基地

2019独角兽企业重金招聘Python工程师标准>>> ...

Ubuntu 16.04 安装ROS sudo rosdep init报错问题_weixin_30475039的博客-程序员宅基地

解决博文:https://blog.csdn.net/weixin_37835458/article/details/79878785输入sudo rosdep init报错如下:Traceback (most recent call last): File "/usr/bin/rosdep", line 3, in <module> from rosdep2.ma...

随便推点

记录-插入节点insertBefore()报错_启舟亢的博客-程序员宅基地

记录今天在插入节点问题上出现了报错Uncaught TypeError: Failed to execute ‘insertBefore‘ on ‘Node‘: 2 arguments required, but only 1 present.在之前都是用appendChild,突发想用insertBefore,就报错了,感觉去看了一下文档。node.insertBefore(newn...

Linux TCP/IP调优-Linux内核参数注释_weixin_30518397的博客-程序员宅基地

固定文件的内核参数下列文件所在目录:/proc/sys/net/ipv4/名称默认值建议值描述tcpsyn_retries51对于一个新建连接,内核要发送多少个SYN连接请求才决定放弃。不应该大于255,默认值是5,对应于180毫秒左右时间。(对于大负载而物理通信良好的网络来说,这个值偏高,可以修改为2。这个...

mysql常用语句_weixin_43460393的博客-程序员宅基地

create database name;/*创建数据库文件*/show databases;drop database name;use name

SAP freelancer接SAP项目应有底线思维_喜欢打酱油的老鸟的博客-程序员宅基地

SAP freelancer接SAP项目应有底线思维上周和一个业界资深顾问同行做了一些沟通。她跟我年纪差不多,都是做了很多年的SAP顾问,目前也是自由职业者,技术领域,外语能力都不错。我们在K项目上一起共事一年多,工作中交集甚多。在K项目上线后的支持工作中,笔者再次和她有些交集,一起支持客户的后勤业务运行。所以上周的私下交流里,我们提到了比较敏感的话题,即各自接SAP项目的rate的问题。根据她的描述,她很有底线,要求比较高,rate不到位宁可闲着不做!她的底线,高于我的底线至少

ArcGIS Pro快速汉化方法_李远祥的博客-程序员宅基地_arcgis pro 中文

ArcGIS Pro快速汉化方法 文章导读:ArcGIS Pro作为ArcMap的接棒者,已经逐步出现在各种GIS试用环节中,其功能和特色就不用说了,本文主要说明一下ArcGIS Pro的汉化问题。跟ArcMap一样,ArcGIS Pro 每个版本都会有官方的中文包(特别说明,这是官方发布的中文包),但一般中文包会落后原生的英文包本年时间左右,对于ArcGIS Pro 中文版重度试用并喜欢...

kubernetes v1.20.6部署kube-prometheus_victoruu的博客-程序员宅基地

下载github地址https://github.com/prometheus-operator/kube-prometheuswget https://github.com/prometheus-operator/kube-prometheus/archive/refs/tags/v0.8.0.tar.gztar -zxf kube-prometheus-0.8.0.tar.gzcd kube-prometheus-0.8.0/manifests所有配置均在manifest

推荐文章

热门文章

相关标签