2009-03-17 5 views
6

Мне нужно показать большое количество элементов управления EditText на экране, каждый из которых позволит вводить только 0-2 цифр. Размер EditText по умолчанию слишком широк для того, чтобы я отображал достаточно элементов управления EditText на экране, но я не мог понять, как сделать их более узкими. Я попытался следующие атрибуты вКак сделать EditText меньше, чем по умолчанию?

XML:

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

Таким образом, вопрос: как EditText может быть меньше, чем по умолчанию?

+0

Заполнение свойства для использования и небольшой текст редактирования в приложении –

ответ

9

Попробуйте этот способ вместо этого, показывает разницу. Используйте layout_width с указанной шириной.

<?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

Это действительно выглядит так же широко, как и по умолчанию для меня. Как это выглядит, если у вас есть только два символа в EditText? –

+0

ОК, я понимаю, что вы имеете в виду сейчас. При отсутствии указанной ширины ширина текста по умолчанию используется по умолчанию по ширине экрана. – Feet

+0

Ах, понял. Моя проблема заключалась в том, что у меня были элементы управления в таблице, и изменение только одного ничего не изменило. Как только я изменил их ВСЕ, я увидел изменения. –

4

Эй, как только вы попробуете это, он может работать ....... андроид: textAppearance = "андроид: атр/textAppearanceSmall"

1

В случае, если вы в конечном итоге на этой странице, чтобы найти, как добиться того же в Java коде ..

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

Когда в таблице, как вы описываете, андроид: layout_gravity = «левый» свернет EditText до указанного размера EditText

Смежные вопросы