android - programacion - ¿Cómo determinar el número de líneas visibles en TextView?
programacion android pdf 2018 (2)
¿Cómo obtener cuántas líneas se muestran en la parte visible de TextView
? Uso texto, que no está completamente colocado en TextView
en cada resolución de pantalla.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/logs_text"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
String s = "very big text"
TextView logText = (TextView) view.findViewById(R.id.logs_text);
logText.setText(s);
Intenta algo como esto:
<EditText
android:id="@+id/edt_obs"
android:layout_width="0dip"
android:layout_weight="75"
android:layout_height="wrap_content"
android:layout_marginBottom="2dip"
android:inputType="textCapCharacters|textMultiLine"
android:scrollHorizontally="false"
android:gravity="top|left"
android:lines="2"
android:singleLine="false"
android:background="@android:drawable/edit_text"
android:textColor="@color/Black"
android:textCursorDrawable="@color/Black"
/>
Con
android:lines="2"
My EditText obtiene el espacio para 2 líneas, después de eso, el campo obtiene scroll. Recuerda usar
android:singleLine="false"
No probé con TextView, pero creo que funcionará.
android.text.Layout contiene esta información y más. Use textView.getLayout().getLineCount()
para obtener el recuento de líneas.
Tenga en cuenta que getLayout()
puede devolver un null
si se llama antes de que finalice el proceso de diseño. Llame a getLayout()
después de onGlobalLayout()
o onPreDraw()
de ViewTreeObserver
. P.ej
textView.getViewTreeObserver().addOnPreDrawListener(() -> {
final int lineCount = textView.getLayout().getLineCount();
});
Si solo desea un recuento de líneas visibles, probablemente debería utilizar el enfoque mencionado en la respuesta a continuación:
¿Hay alguna forma de recuperar un conteo o rango de líneas visibles de TextView?