小编kan*_*nna的帖子

验证只允许在android中编辑文本中的数字和字符

在我的应用程序中,我必须验证edittext.它应该只允许字符,数字,下划线和hypen.

这是我的代码:

edittext.addTextChangedListener(new TextWatcher() {

                        @Override
                        public void onTextChanged(CharSequence s, int start, int before, int count) {
                            // TODO Auto-generated method stub

                            }

                        @Override
                        public void beforeTextChanged(CharSequence s, int start, int count,
                        int after) {
                                            // TODO Auto-generated method stub

                            }

                                        @Override
                            public void afterTextChanged(Editable s) {
                                            // validation codes here

                            location_name=s.toString();
                            Toast.makeText(getApplicationContext(),location_name, Toast.LENGTH_SHORT).show();                

                            if (location_name.matches(".*[^a-z^0-9].*")) 
                                {
                            location_name = location_name.replaceAll("[^a-z^0-9]", "");
                            s.append(location_name);
                            s.clear();
                            Toast.makeText(getApplicationContext(),"Only lowercase letters and numbers are allowed!",Toast.LENGTH_SHORT).show();

                            }

                            }

                        });     

location.add(location_name);
Run Code Online (Sandbox Code Playgroud)

在此,当我在edittext中输入输入时,应用程序被强制关闭.请给我建议.谢谢.

android

28
推荐指数
4
解决办法
6万
查看次数

标签 统计

android ×1