Desarrollo de Android: Count EditText Lines en textChanged?

¿Cómo puedo contar el número de líneas en un EditText? Básicamente en mi aplicación tengo números de línea y quería hacerlos actualizar en el cambio de texto (ya tengo el textchangelistener configurar). es posible? Significado de la palabra

¡Gracias, Alex!

Las líneas pueden ser diferentes:

  • Líneas visibles: cuenta de texto envuelto como una nueva línea …
  • Elemento de lista: Sólo líneas con \ r, \ n, \ r \ n

Primer caso (el más fácil):

int nbLines = editText.getLineCount(); 

Segundo caso:

  int nbLines = 0; StringReader sr = new StringReader(editText.getText().toString()); LineNumberReader lnr = new LineNumberReader(sr); try { while (lnr.readLine() != null){} nbLines = lnr.getLineNumber(); lnr.close(); } catch (IOException e) { nbLines = editText.getLineCount(); } finally { sr.close(); } 

Depende de lo que usted define como "número de línea". Una línea en su edittext en "GUI way", que incluye los linebreaks que hace su editview? ¿O una línea de "codificación" para describirla (tener \ n al final)? Primero será muy difícil de conseguir, si es imposible. Segundo: basta con contar los números de \ n en el texto, además de añadir otro 1 si hay algo después del último \ n.

  • Android EditText setText no actualizar el texto
  • EditText duplicado en rotación
  • Comportamiento extraño con selectAllOnFocus cuando EditText está en ListView
  • EditText: Diferenciar entre cambio de texto por setText () o por entrada de teclado
  • TextInputLayout y AutoCompleteTextView
  • Borrar enfoque EditText cuando se pulsa el botón Atrás cuando se muestra el teclado virtual
  • Android: quitar Enter Key de softkeyboard
  • Android EditText siempre tiene relleno desde abajo
  • EditText no recibe eventos clave TAB - stock soft vk
  • ¿Es posible cambiar el resumen de EditTextPreference dinámicamente en Android?
  • Cómo hacer que Android EditText se expanda verticalmente cuando está lleno
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.