我尝试使用LayoutParams.MATCHPARENT为其宽度和高度动态创建一个edittext。 我尝试了以下代码,但它仍然无效。
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.setSingleLine(false);
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);
上面的代码让我输入几行,键盘上会显示一个“ENTER”按钮,但是当我在edittext上输入时,如果宽度不足以显示文本,则编辑文本会水平滚动。 任何人都可以帮我如何使edittext多线?
答案 0 :(得分:8)
尝试以下代码
editor.setSingleLine(false);
editor.setHorizontalScrollBarEnabled(false);
答案 1 :(得分:5)
试试此代码
txt.setSingleLine(false);
txt.setLines(14);
txt.setMinLines(13);
txt.setMaxLines(15);
txt.setGravity(Gravity.LEFT | Gravity.TOP);
答案 2 :(得分:1)
尝试
android:scrollHorizontally="false"
用于edittext
答案 3 :(得分:1)
在代码中添加以下行,它可能对您有帮助。
editor.setSingleLine(false);