Tengo una desplazable textView, y quiero limitar el número de líneas en la pantalla, sin embargo xml propiedades no son de trabajo :

<TextView
   android:id="@+id/tv_addesc"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:scrollbars="vertical"
   android:maxLines="12"
   android:textColor="#FFFFFFFF"
   android:textSize="15sp" />

el número de líneas en la pantalla es de 50 y hay 900 caracteres en el texto.

¿Cómo puedo limitar el número de líneas en la pantalla y hacer que sea desplazable ?

Edit : he probado con 846 líneas y 15824 caracteres, el texto se muestra independientemente de las diferentes propiedades de conjunto.

Edit : hubo un segundo componente, además de la textView, cuando me lo quitaron funcionó, así que voy a encontrar una solución. Gracias !

  • Yo creo que no hay necesidad de definir «isScrollContainer» y «líneas» en esta etiqueta. Funciona muy bien sin ellos para mí.
  • has probado a dar layout_width como wrap_content ?
  • no funciona bien =\

6 Comentarios

  1. 80

    Sólo tienes que establecer una serie de líneas en su TextView como este:

    android:maxLines = "10"

    y también debe agregar:

    android:minLines="1"

    El resto de esto no es necesario si usted no está utilizando el desplazamiento

    y una propiedad que dice que este TextView debe ser desplazable verticalmente:

    android:scrollbars = "vertical"

    Y en su Java-código:

    yourTextView.setMovementMethod(new ScrollingMovementMethod())
    • lo siento, pero eso no cambia nada. Tendría algo que ver con el límite de caracteres de un textView ?
    • Tal vez, sólo tratar de disminuir la maxLines, y añadir un montón de texto. Yo no tengo mi entorno disponible ahora, así que es sólo una estimación aleatoria.
    • ahora tengo desc lines =106 y desc char count =1978
    • Agregar android:minLines="1" demasiado
    • ¿Por qué usted escribe: «[…] también debe agregar: android:minLines="1"? Android documentación no indica que ambas propiedades se deben establecer y mi aplicación no necesita tener minLines conjunto. ¿En qué casos es necesario?
    • No funcionó para mí, pero después de la adición android:ellipsize="marquee" ahora funciona..

  2. 2

    poner su vista de texto con desplazamiento ver y establecer la altura fija de desplazamiento de la vista.

    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="fill_parent"
        android:layout_height="120dip" >
    
        <TextView
            android:id="@+id/tv_addesc"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:maxLines="12"
            android:scrollbars="vertical"
            android:textColor="#FFFFFFFF"
            android:textSize="15sp" />
    </ScrollView>

    establecer las propiedades según su necesidad

    • como la propiedad maxLines="12" no funciona, todo el texto se muestra (50 líneas – 900 caracteres)
    • usted puede quitar, estaba en su código. por favor, ajuste aquí android:layout_height=»120dip» > aumentar o disminuir la altura de desplazamiento como por su necesidad.
  3. 2
    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="fill_parent"
        android:layout_height="120dip" >
    
        <TextView
            android:id="@+id/tv_addesc"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:maxLines="12"
            android:scrollbars="vertical"
            android:textColor="#FFFFFFFF"
            android:textSize="15sp" />
    </ScrollView>
  4. 2

    Encontrar su textview por id:

    TextView myTextBox=(TextView)findViewById(R.id.textBox);

    Ahora uso el setMaxLines función y asignar el número de líneas que requieren en él,por ejemplo, 20.

    myTextBox.setMaxLines(20);

    Esto limita su cuadro de texto para mostrar el 20 de líneas.

  5. 1

    hola, intente configurar el singleline propiedad a false. Acaba de ver si funciona.

    • no cambia nada, pero incluso android:singleLine="true" no funciona demasiado
    • No dan una altura estática para scrollView…darle envoltura de contenido y, a continuación, agregue el textview a una lineal o pariente de diseño..y entonces se puede dar a una altura estática para este diseño..
  6. 0

    Traté como se dijo en aceptó de respuesta y otros, pero no funcionó para mí, pero después de la adición android:ellipsize="marquee" ahora funciona..

Dejar respuesta

Please enter your comment!
Please enter your name here