歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Android EditText 增加自定義過濾

在Android中,可以通過對EditText設置setFilters方法,用代碼控制EditText的輸入長度,或控制輸入小數的位數等。

1.設置EditText的輸入長度

inputEdit.setFilters(new InputFilter[] { new InputFilter.LengthFilter(length)});  

2.控制輸入小數的位數

  1. // 設置小數位數控制   
  2.         InputFilter lengthfilter = new InputFilter() {   
  3.             public CharSequence filter(CharSequence source, int start, int end,   
  4.                     Spanned dest, int dstart, int dend) {   
  5.                 // 刪除等特殊字符,直接返回   
  6.                 if ("".equals(source.toString())) {   
  7.                     return null;   
  8.                 }   
  9.                 String dValue = dest.toString();   
  10.                 String[] splitArray = dValue.split("\\.");   
  11.                 if (splitArray.length > 1) {   
  12.                     String dotValue = splitArray[1];   
  13.                     int diff = dotValue.length() + 1 - digLength;   
  14.                     if (diff > 0) {   
  15.                         return source.subSequence(start, end - diff);   
  16.                     }   
  17.                 }   
  18.                 return null;   
  19.             }   
  20.         };   
  21.         inputEdit.setFilters(new InputFilter[] { lengthfilter });  
Copyright © Linux教程網 All Rights Reserved