2 csh 34 csh_34 于 2012.10.26 10:58 提问

实现edittext的多行显示

我使用 LayoutParams动态的创建一个edittex。使用MATCHPARENT为其设置宽度和高度。使用下面的代码,但是运行不了:

EditText editor = ....;
LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT, 1);
editor.setLayoutParams(params);
editor.setGravity(Gravity.LEFT | Gravity.TOP);
editor.setBackgroundColor(Color.WHITE);
editor.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
editor.setTextColor(Color.BLACK);
editor.setFocusableInTouchMode(true);
editor.setInputType(EditorInfo.TYPE_CLASS_TEXT | EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE | EditorInfo.TYPE_TEXT_FLAG_IME_MULTI_LINE);
editor.setMaxLines(Integer.MAX_VALUE);
editor.setHorizontallyScrolling(false);
editor.setTransformationMethod(null);

代码提示输入几行,并且在键盘上显示一个“输入”按钮,但当我在edittext中输入文本,如果edit text宽度不够时是水平滚动的。如何让edittext多行显示呢?

3个回答

ueryueryuery
ueryueryuery   2012.10.26 13:24
已采纳

这样试下
editor.setSingleLine(false);

O_Casper_ne
O_Casper_ne   2012.10.26 17:00
editor.setSingleLine(false);
editor.setHorizontalScrollBarEnabled(false);
xiaoyan_12
xiaoyan_12   2012.10.26 17:01

也可以是:

android:scrollHorizontally="false"
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
笔记——android EditText多行显示并且支持imeOptions
EditText的imeOptions属性
带多行下划线的EditText
public class LineEditText extends EditText { private Paint mPaint; private Rect rect; private static final int MARGIN = 10; public LineEditText(Context context) { super(contex
EditText如何显示多行
最近开发EditTex用的特别多,随便记录记录一些细节问题。 EditText如何显示多行呢? 直接加上这个属性即可 android:inputType="textMultiLine" 想未编辑前,默认显示几行呢?加上这个属性即可 android:minLines="3" 当然,EditText的hint和编辑默认居中,所以要加上属性android:gravity="top"
EditText单行、多行和自动换行显示内容
EditText单行、多行和自动换行显示内容      由于上述相关属性都来自继承的TextView,那么先说说TextView的单行、多行的应用场景: 1) TextView默认是多行显示的,并且能够自动换行。不过自动换行时对中文处理的不是很好,很容易在控件边框附近出现空白间隙。要想处理这种情况只能够去自定义TextView了,具体可查看Android自定义view-
android EditText多行显示并且支持imeOptions设置
android EditText 单行显示并且设置imeOptions很简单,条件是在xml中将singleLine设置为true, 将inputType设置为text,多行显示默认是不能设置,默认是回车键,在网上查了好久,发现一个解决方法,记录一下: XMLandroid:inputType=”text|textCapSentences” JAVAeditText.setHorizonta
Android开发:如何设置EditText多行显示输出及改变多行EditText的默认显示方式
设置了多行属性:android:singleLine="false" android:maxLines="10" 在Android开发中,多行文本框EditText的默认显示方式是居中,那怎么让它从第一行开始显示呢? 其实很简单,只需要在EditText的属性中加上 android:gravity=”top”  即可。 或者通过编程的方式动态实现: private EditText bod
Android EditText 设置键盘右下角显示发送,并且可以输入多行
Android EditText 设置键盘右下角显示发送,并且可以输入多行 今天一哥们在群里问了这么一个问题,试着实现了一下,在此记录一下: 首先既然想在EditText 获取焦点以后,键盘右下角显示完成,那就在需在xml文件中为EditText添加android:imeOptions=”actionSend”属性 然后需在代码中设置一下两行代码即可 mEditText.setInp...
android开发带下划线的多行文本框
最近写的一个多行文本框,要带下划线的,但是效果并不是很好,但是勉勉强强地算是有下划线了,原理是计算每一行的行高,然后重写EditText的onDraw()方法,在这里面将下画线一个个给画出来,源码:package com.study.mylabel.UI;import android.content.Context; import android.graphics.Canvas; import an
Android EditText 多行输入滚动效果。
Android EditText 编辑框中输入多行内容时,由于某些情况下,需要设置滚动效果。 这个时候 如下面设置就可以实现手动滚动编辑框内容的效果         android:id="@+id/content_et"         android:layout_width="fill_parent"         android:layout_height="wrap_cont
EditText单行、多行和自动换行显示内容以及只输入数字和小数点
先说说TextView的单行、多行的应用场景: 1) TextView默认是多行显示的,并且能够自动换行。不过自动换行时对中文处理的不是很好,很容易在控件边框附近出现空白间隙。要想处理这种情况只能够去自定义TextView了,具体可查看Android自定义view-文本自动换行。不过这种方式并不是很好,建议使用自带的StaticLayout类来对内容进行显示处理。 2) TextVie