2013-07-15 4 views
0

У меня есть блок редактирования, а максимальная длина установлена ​​на 6 цифр. он работает четко, но на клавиатуре я могу продолжать печатать.Как установить максимальную длину на клавиатуру Android

EditText: 111111

клавиатура: 11111111111111111 ....

и при попытке удалить, он удаляет номер справа налево, когда клавиатура доходит до 6 цифр, я могу удалить EditText.

У вас есть опыт работы с этим?

я не могу загрузить изображение с работы,

------------------ 
-111111   - - edittext max length 6 
------------------ 




------------------- 
- 1111111111... - -> recommendation textbox on native keyboard 
------------------- 
1 2 3 4 5 6 7 8 9 0 
q w e .... 
.. 
.. 
.. 
.. 
------------------- 



    <EditText 
      android:id="@+id/editTextSMSPassword" 
      android:layout_width="match_parent" 
      android:layout_marginLeft="8dp" 
      android:layout_marginRight="8dp" 
      android:layout_marginTop="20dp" 
      android:ems="10" 
      style="@style/EditboxStandart" 
      android:maxLength="6" 
      android:hint="Cep Şifre" /> 




    <style name="EditboxStandart"> 
     <item name="android:layout_height">@dimen/editbox_standart_height</item> 
     <item name="android:textSize">@dimen/editbox_standart_text_size</item> 
     <item name="android:background">@drawable/selector_rounded_text</item> 
     <item name="android:maxLines">1</item> 
     <item name="android:singleLine">true</item> 
     <item name="android:typeface">normal</item> 
    </style> 
+0

Что вы подразумеваете под "на клавиатуре"? – maclir

+0

Вы уверены, что задаете 'android: maxLength =" 6 "' на этом 'EditText'? – ozbek

+0

вы можете посмотреть отредактированный вопрос, я не могу загрузить изображение с работы, поэтому я пытаюсь рисовать. – Talha

ответ

-1

android:maxLength="6" должен работать, но так как это не может происходить из-за ваш новый стиль, так что используйте входной фильтр, чтобы ограничить что максимальную длину текстовый вид.

TextView editEntryVew = new TextView(...); 
InputFilter[] FilterArray = new InputFilter[1]; 
FilterArray[0] = new InputFilter.LengthFilter(6); 
editEntryView.setFilters(FilterArray); 
+0

благодарит за ответ, но не решает проблему. – Talha

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