关闭

EditText单行、多行和自动换行显示内容以及只输入数字和小数点

1133人阅读 评论(0) 收藏 举报
分类:

先说说TextView的单行、多行的应用场景:

1) TextView默认是多行显示的,并且能够自动换行。不过自动换行时对中文处理的不是很好,很容易在控件边框附近出现空白间隙。要想处理这种情况只能够去自定义TextView了,具体可查看Android自定义view-文本自动换行。不过这种方式并不是很好,建议使用自带的StaticLayout类来对内容进行显示处理。

2) TextView被用来显示标题等类似内容时需要单行显示。只要设置android:singleLine=”true” 即可。此时也可以设置跑马灯效果,具体查看[Android教程]TextView属性android:ellipsize实现跑马灯效果

现在来说说EditText,它默认也是多行显示和自动换行的,单行设置跟TextView是相同的。由于设备屏幕大小限制,大部分情况EditText都需要单行显示。

相关代码:


       android:id="@+id/etTest" android:singleLine="true"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"/>

 

 

默认的edittext是不会自动换行的,那么我们只好去代码中寻求解决之道

 

EditText editText new EditText(this);  

//设置EditText的显示方式为多行文本输入  

editText.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);  

//文本显示的位置在EditText的最上方  

editText.setGravity(Gravity.TOP);  

editText.setText("哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈啊哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈");  

//改变默认的单行模式  

editText.setSingleLine(false);  

//水平滚动设置为False  

editText.setHorizontallyScrolling(false);  


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同时设置才可以


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

EditText单行、多行和自动换行显示内容

EditText单行、多行和自动换行显示内容      由于上述相关属性都来自继承的TextView,那么先说说TextView的单行、多行的应用场景: 1) TextVi...
  • HiGson
  • HiGson
  • 2016-12-17 14:30
  • 2847

Android edittext 显示字数限制和输入类型

在开发应用的时候,文本编辑框EditText有字数输入限制,经常会显示还剩多少字以限制用户输入的字数 android:maxLength="10" //即限制最大输入字符个数为1 EditText ...
  • a704755096
  • a704755096
  • 2015-05-19 16:08
  • 3391

EditText定义样式,限制输入字符,自动换行,获取焦点

  • 2014-07-04 16:38
  • 2.33MB
  • 下载

解决Android EditText多行输入,内容或边框显示的问题

在Android中,如下面局: [code=java]                       android:layout_width="match_parent"...
  • zxb3121999
  • zxb3121999
  • 2016-02-29 17:39
  • 901

CDC:DrawText多行显示文本的问题(文本自动换行)

int DrawText( HDC hDC,          // handle to DC LPCTSTR lpString, // text to draw int nCount,  ...
  • winnyrain
  • winnyrain
  • 2011-08-10 21:12
  • 8983

CDC:DrawText多行显示文本的问题(文本自动换行)

int DrawText( HDC hDC,          // handle to DC LPCTSTR lpString, // text to draw int nCount, ...
  • ClumsyPerson
  • ClumsyPerson
  • 2014-07-30 17:08
  • 1903

css 单行换行和多行换行

单行 语法 overflow:hidden; text-overflow:ellipsis; white-space:nowrap 多行 1.直接用css属...
  • h1lin0010
  • h1lin0010
  • 2018-01-03 14:37
  • 10

TextView/EditText字体阴影 ,自动换行,焦点获取,输入法回车键前往,自定义光标

Android字体阴影  strings.xml文件定义字符串中的标签  Android TextView 自动换行问题  关于android软键盘enter键的替换与事件监听  软件盘的...
  • u014702999
  • u014702999
  • 2015-07-09 11:43
  • 1450

Delphi Android通知栏消息内容(单行/多行)实现

  • 2017-12-05 13:40
  • 43KB
  • 下载

EditText的换行输入、输入起始位置、调用指定格式的系统键盘(显示和隐藏),光标颜色,密码动态设置可见性

EditText editText = new EditText(this); //设置EditText的显示方式为多行文本输入 editText.setInputType(InputType...
  • ytfunnysite
  • ytfunnysite
  • 2017-03-01 20:05
  • 646
    个人资料
    • 访问:3724次
    • 积分:165
    • 等级:
    • 排名:千里之外
    • 原创:13篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条