Pregunta

Necesito mostrar una gran cantidad de controles EditText en una pantalla, cada uno de los cuales solo permitirá ingresar 0-2 dígitos. El tamaño predeterminado de EditText es demasiado ancho para que pueda mostrar suficientes controles de EditText en una pantalla, pero no he podido encontrar la forma de hacerlos más estrechos. He probado los siguientes atributos en

XML:

android:maxLength="2"
android:layout_width="20dip"
android:maxWidth="20px"
android:ems="2"
android:maxEms="2"

Entonces la pregunta es: ¿cómo puede EditText hacerse más pequeño que el predeterminado?

¿Fue útil?

Solución

Intente de esta manera, muestra la diferencia. Use el layout_width con el ancho especificado.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

<EditText
    android:width="10dip"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />

<EditText
    android:layout_width="40dip"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    android:maxLength="2"
    />

</LinearLayout>

 texto alternativo

Otros consejos

Oye, una vez que pruebes esto, puede funcionar .......  android: textAppearance = "? android: attr / textAppearanceSmall "

En caso de que termine en esta página para buscar cómo lograr lo mismo en el código Java ...

txtSample.setFilters(new InputFilter[]{new InputFilter.LengthFilter(2)});

Cuando en una tabla, como usted describe, android: layout_gravity = " left " colapsará EditText al tamaño indicado de EditText

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top