Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android edittext inputfilter应接受空格、字符和;数 street=(EditText)findViewById(R.id.street); InputFilter筛选器=新的InputFilter(){ 公共CharSequence筛选器(CharSequence源、int开始、int结束、跨区目标、int开始、int结束){ 对于(inti=start;i_Android_Numbers_Character_Space - Fatal编程技术网

android edittext inputfilter应接受空格、字符和;数 street=(EditText)findViewById(R.id.street); InputFilter筛选器=新的InputFilter(){ 公共CharSequence筛选器(CharSequence源、int开始、int结束、跨区目标、int开始、int结束){ 对于(inti=start;i

android edittext inputfilter应接受空格、字符和;数 street=(EditText)findViewById(R.id.street); InputFilter筛选器=新的InputFilter(){ 公共CharSequence筛选器(CharSequence源、int开始、int结束、跨区目标、int开始、int结束){ 对于(inti=start;i,android,numbers,character,space,Android,Numbers,Character,Space,我的edittext可以过滤虚拟键盘上的字符和数字,但不能使用空格字符。。plz help我用“&&”代替了“| |”,得到了答案 street = (EditText) findViewById(R.id.street); InputFilter filter = new InputFilter() { public CharSequence filter(CharSequence source, int start, int end,Spanned dest, int dstart,

我的edittext可以过滤虚拟键盘上的字符和数字,但不能使用空格字符。。plz help

我用“&&”代替了“| |”,得到了答案

street = (EditText) findViewById(R.id.street);
InputFilter filter = new InputFilter() {
    public CharSequence filter(CharSequence source, int start, int end,Spanned dest, int dstart, int dend) { 
        for (int i = start; i < end; i++) { 
             if (!Character.isLetterOrDigit(source.charAt(i)) || !Character.isSpaceChar(source.charAt(i))) { 
                 return "";     
             }     
        }
        return null;   
    }  
};
street.setFilters(new InputFilter[] { filter });
是您想要的代码,假设您不需要空白字符,只需要数字或字符

使用此条件

!Character.isLetterOrDigit(source.charAt(i)) || Character.isSpaceChar(source.charAt(i))
for(inti=start;i
请格式化您的代码,以便更好地理解
for (int i = start; i < end; i++) { 
    if (!Character.isLetterOrDigit(source.charAt(i))) {
        if (!Character.isSpaceChar(source.charAt(i)))
            return "";
    }
}