et_issue_size.addTextChangedListener(object : TextWatcher {
override fun afterTextChanged(s: Editable?) {
}
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
}
override fun onTextChanged(str: CharSequence?, start: Int, before: Int, count: Int) {
var s:CharSequence?=str;
if(s!=null){
var dianCount=s.toString().toCharArray().filter {
ForLog.showError(it.toString()+it.toString().equals("."))
it.toString().equals(".")
}.count();
ForLog.showError("点的数量"+dianCount)
if(dianCount>1){
//此处表示小数点出现多次
s=s.toString().subSequence(0, s!!.length-1);
et_issue_size.setText(s);
et_issue_size.setSelection(s!!.length);
}else {
//此处表示小数点只出现一次或者0次
if (s.toString().contains(".")) {
if (s!!.length - 1 - s.toString().indexOf(".") > 2) {
s = s.toString().subSequence(0, s.toString().indexOf(".") + 3);
et_issue_size.setText(s);
et_issue_size.setSelection(s!!.length);
}
}
if (s.toString().trim().substring(0).equals(".")) {
s = "0" + s;
et_issue_size.setText(s);
et_issue_size.setSelection(2);
}
if (s.toString().startsWith("0")
&& s.toString().trim().length > 1) {
if (!s.toString().substring(1, 2).equals(".")) {
et_issue_size.setText(s!!.subSequence(0, 1));
et_issue_size.setSelection(1);
return;
}
}
if(s!!.length>0 &&s.toString().toDouble()>9999){
s=s.toString().subSequence(0, s!!.length-1);
et_issue_size.setText(s);
et_issue_size.setSelection(s!!.length);
}
if(s!!.length==5 && s!![0].toString().equals("9") &&
s!![1].toString().equals("9") &&
s!![2].toString().equals("9") &&
s!![3].toString().equals("9") &&
s!![4].toString().equals(".")){
s=s.toString().subSequence(0, s!!.length-1);
et_issue_size.setText(s);
et_issue_size.setSelection(s!!.length);
}
}
}
}
})