Android之EditText控制禁止输入空格和回车
1.EdiTtext输入框控制不能输入空格,给EditText添加一个addTextChangedListener监听,如果有空格split截取截取再for循环将截取后不包含空格的字符串数组重新排列这样这个字符串就不包含空格了,最后将这个字符串重新写入EditText,这时会出现一个问题就是光标会自动跳转到第一个位置,在onTextChanged中会有一个叫做start的变量他会传入在这个空格输入之前的光标位置,EditText.setSelection(int)来改变光标的位置具体位置。
具体代码:
private EditText edittextcll;// 输入框 edittextcll = (EditText) findViewById(R.id.edittextcll); //监听输入框禁止输入空格 edittextcll.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { if (s.toString().contains(" ")) { String[] str = s.toString().split(" "); String str1 = ""; for (int i = 0; i < str.length; i++) { str1 += str[i]; } edittextcll.setText(str1); edittextcll.setSelection(start); } } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void afterTextChanged(Editable s) { } });
2.EditText控制不能输入回车,在xml中添加android:singleLine="true"
<EditText android:id="@+id/edittextcll" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:background="@null" android:gravity="top" android:hint="输入更多补充意见" android:singleLine="true" android:textColor="#262626" android:textSize="16dp" />
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!
相关文章
详解Android中Activity运行时屏幕方向与显示方式
本文主要对如何控制Android中Activity运行时屏幕方向与显示方式进行详细全面的实例讲解。具有很好的参考价值,需要的朋友一起来看下吧2016-12-12Android控件RefreshableView实现下拉刷新
这篇文章主要为大家详细介绍了Android控件RefreshableView实现下拉刷新,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-11-11Android WindowManager深层理解view绘制实现流程
WindowManager是Android中一个重要的Service,是全局且唯一的。WindowManager继承自ViewManager。WindowManager主要用来管理窗口的一些状态、属性、view增加、删除、更新、窗口顺序、消息收集和处理等2022-11-11详解Activity之singletast启动模式及如何使用intent传值
在一个新栈中创建该Activity实例,并让多个应用共享改栈中的该Activity实例。一旦改模式的Activity的实例存在于某个栈中,任何应用再激活改Activity时都会重用该栈中的实例,其效果相当于多个应用程序共享一个应用,不管谁激活该Activity都会进入同一个应用中2015-11-11
最新评论