EditText单行、多行和自动换行显示内容以及只输入数字和小数点
来源:互联网 发布:阿里云服务器登录密码 编辑:程序博客网 时间:2024/05/22 10:31
先说说TextView的单行、多行的应用场景:
1) TextView默认是多行显示的,并且能够自动换行。不过自动换行时对中文处理的不是很好,很容易在控件边框附近出现空白间隙。要想处理这种情况只能够去自定义TextView了,具体可查看Android自定义view-文本自动换行。不过这种方式并不是很好,建议使用自带的StaticLayout类来对内容进行显示处理。
2) TextView被用来显示标题等类似内容时需要单行显示。只要设置android:singleLine=”true” 即可。此时也可以设置跑马灯效果,具体查看[Android教程]TextView属性android:ellipsize实现跑马灯效果。
现在来说说EditText,它默认也是多行显示和自动换行的,单行设置跟TextView是相同的。由于设备屏幕大小限制,大部分情况EditText都需要单行显示。
相关代码:
默认的edittext是不会自动换行的,那么我们只好去代码中寻求解决之道
EditText
//设置EditText的显示方式为多行文本输入
editText.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);
//文本显示的位置在EditText的最上方
editText.setGravity(Gravity.TOP);
editText.setText("哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈啊哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈");
//改变默认的单行模式
editText.setSingleLine(false);
//水平滚动设置为False
editText.setHorizontallyScrolling
EditText可以设置多种输入方式,其中若要设置输入数字和小数点时应注意一下几点:
1.如果设置只输入数字
edittext.setInputType( InputType.TYPE_CLASS_NUMBER);
此时只会弹出数字输入框,符号点击后不会输入到文字框中
2.只能输入数字和小数点
edittext.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
此时注意:只设置InputType.TYPE_NUMBER_FLAG_DECIMAL是无法实现只能输入数字和小数点的,必须InputType.TYPE_CLASS_NUMBER 和
InputType.TYPE_NUMBER_FLAG_DECIMAL同时设置才可以
- EditText单行、多行和自动换行显示内容以及只输入数字和小数点
- EditText单行、多行和自动换行显示内容
- js只允许输入数字和小数点
- js只允许输入数字和小数点
- EditText限制只可以输入数字和小数点,小数点后面只可以输入两位(可使用于输入折扣等)
- EditText只输入数字和密码
- 限制EditText只输入数字和字母
- 输入框只允许输入数字和小数点
- Android EditText设置只能输入数字和小数点
- Android EditText设置只能输入数字和小数点
- textbox中只允许输入数字和小数点
- js只允许输入数字和小数点 (转)
- js控制文本框只输入数字和小数点
- html input设置为只允许输入数字和小数点
- EditText实现只能输入数字和小数点,限制小数点后?位,并且以数字0开头后只能输入小数点
- edittext只能输入数字和小数点,且小数点后只能输入两位
- edittext只能输入数字和小数点时并且小数点后只能输入两个小数
- EditText只允许输入数字和字母,且是暗文显示的
- Java JUnit 5 新特性
- jquery获取form中第一个div的方法
- 【Android休眠】之Android对PowerKey事件的处理(2)EventHub
- 桶排序 原理(简单版)
- 关于apache2报443端口被占用的问题
- EditText单行、多行和自动换行显示内容以及只输入数字和小数点
- 【Android休眠】之休眠锁的获取和释放
- 《自己动手写网络爬虫》笔记4-带偏好的网络爬虫
- 【Android休眠】之AutoSleep
- maven项目常用技巧: profile与资源过滤
- JVM之——生产环境jvm参数设置建议
- 红帽RHEL7版本RHCE认证学习及考试经历
- seo软文标题写作技巧:好的标题是靠这样想出来的
- jquery each报 Uncaught TypeError: Cannot use 'in' operator to search for错误