2009-03-17 24 views
6

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 amplio para mostrar suficientes controles de EditText en una pantalla, pero no he podido averiguar cómo hacerlos más estrechos. He probado los siguientes atributos en¿Cómo hacer que EditText sea más pequeño que el predeterminado?

XML:

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

Entonces la pregunta es: ¿cómo puede EditarTexto hacerse más pequeño que por defecto?

+0

propiedad de relleno para usar y pequeña para editar texto en la aplicación –

Respuesta

9

En su lugar, pruebe esta 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> 

alt text http://i40.tinypic.com/2953fao.jpg

+0

Eso en realidad parece tan ancho como el predeterminado para mí. ¿Cómo se ve si solo tiene dos caracteres en EditText? –

+0

OK, ya veo lo que quieres decir. Sin ancho especificado, todo el ancho del texto se usa para el valor predeterminado hasta el ancho de la pantalla. – Feet

+0

Ah, lo tengo. Mi problema fue que tenía los controles en una mesa, y cambiar solo uno no hizo ningún cambio. Una vez que los cambié TODOS vi los cambios. –

4

Hey una vez que pruebe esto, se puede trabajar ....... androide: textAppearance = "android:? Attr/textAppearanceSmall"

1

En caso de que termines en esta página para buscar la manera de lograr lo mismo en código Java ..

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

Cuando en una tabla, como se describen, androide: layout_gravity = "izquierda" se derrumbará la EditText to para el tamaño establecido de EditText

Cuestiones relacionadas