¿Permitir multilínea en la vista Editar texto en Android?

¿Cómo permitir líneas múltiples en la vista EditText de Android?

De forma predeterminada, todos los widgets de EditText en Android tienen varias líneas.

Aquí hay un código de muestra:

  android:lines="8"  android:minLines="6"  android:gravity="top|left"  android:maxLines="10"  android:layout_height="wrap_content"  android:layout_width="match_parent"  android:scrollbars="vertical"  /> 

Puede que le resulte mejor usar:

  

Esto se debe a que android: singleLine está en desuso.

Esto funciona para mí, en realidad estos 2 atributos son importantes: inputType y líneas . Además, puede necesitar una barra de desplazamiento, el siguiente código muestra cómo hacer una:

   

Esta es la forma en que usé y está funcionando bien también. Espero, esto ayudaría a alguien.

  

¡Aclamaciones! …Gracias.

Pruebe esto, agregue estas líneas a su vista de edición de texto, agregaré la mía. asegúrate de entenderlo

 android:overScrollMode="always" android:scrollbarStyle="insideInset" android:scrollbars="vertical"  

y en su clase java, haga clic en “Listner” para editar este texto de la siguiente manera, agregaré los nombres de la mina, “chane” de acuerdo con los suyos.

 EditText description; description = (EditText)findViewById(R.id.editText_newprom_description); description.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) { view.getParent().requestDisallowInterceptTouchEvent(true); switch (motionEvent.getAction() & MotionEvent.ACTION_MASK){ case MotionEvent.ACTION_UP: view.getParent().requestDisallowInterceptTouchEvent(false); break; } return false; } }); 

Esto funciona bien para mi

EditText tiene propiedad singleLine . Puede establecer en el XML o llamando a setSingleLine (falso); http://developer.android.com/reference/android/widget/TextView.html#setSingleLine%28%29

Todos estos son buenos pero no funcionarán en caso de que tengas tu texto de edición dentro de la vista de desplazamiento de nivel superior 🙂 Tal vez el ejemplo más común es la vista de “Configuración” que tiene tantos elementos que van más allá del área visible. En este caso, los pones a todos en la vista de desplazamiento para hacer la configuración desplazable. En caso de que necesite texto de edición desplazable de líneas múltiples en su configuración, su desplazamiento no funcionará.

Para desactivar el número de líneas que se asignaron previamente en el tema, use el atributo xml: android:lines="@null"

   

Aprendí esto de http://www.pcsalt.com/android/edittext-with-single-line-line-wrapping-and-done-action-in-android/ , aunque no me gusta el sitio web. Si quiere una línea múltiple PERO desea conservar el botón enter como un botón de publicación, establezca el “desplazamiento horizontal” de listview en falso.

android:scrollHorizontally="false"

Si no funciona en xml, hacerlo programáticamente funciona extrañamente.

listView.setHorizontallyScrolling(false);

Otra buena android:layout_height="wrap_content" es usar android:minHeight junto con android:layout_height="wrap_content" . De esta manera puede establecer el tamaño de la edición cuando está vacía, y cuando el usuario ingresa cosas, se extiende de acuerdo con la cantidad de entradas del usuario, incluidas las líneas múltiples.

  

y en la actividad para eliminar “\ n” es el usuario presione nextline

 String editStr= edittxtAddress.getText().toString().trim(); MyString= editStr.replaceAll("\n"," ");