2014-06-09 1 views
0

У меня есть вид EditText:Должен ли я переопределить `onEditorAction` или имеет действие« action_done »по умолчанию?

<EditText 
     android:id="@+id/commentEditText" 
     android:layout_width="180dp" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:ems="10" 
     android:imeOptions="actionDone" 
     android:inputType="textMultiLine" /> 

Я хочу, чтобы отключить кнопку «enter», когда пользователь вставить ввод.

Вместо этого я хочу, чтобы клавиатура имела «сделанную» клавишу, которая закроет экранную клавиатуру.

Неужели добавлено android:imeOptions="actionDone"?

Ключ «войти» по-прежнему находится на моем Nexus 4 и нет ключа done.

Должен ли я переопределить onEditorAction или у "action_done" есть поведение по умолчанию?

Спасибо,

ответ

1

Попробуйте это ..

Добавить android:singleLine="true" в вашем EditText

+0

На самом деле вы поднимаете хороший момент. Я знаю, что несколько клавиатур принимают многострочный код, означающий «всегда показывать ключ новой строки, независимо от того, что еще». Это может сработать. –

+0

@GabeSechan да, это так. Благодарю. – Hariharan

0

Клавиатура сама решает, что делать с параметрами IME. Возможно, ваша клавиатура решила не отображать строки опций ime. Я не виню их - сделав это, морфинг ключа ввода - это боль в заднице, и многие пользователи жаловались на это, как на то, что понравилось. Там нет никакого способа, чтобы заставить его, это зависит от конкретной клавиатуры, решив закодировать его.

+0

ИТАК не отображается в «сделано» строке , но почему он все еще действует как «ввести новую строку» и не закрывает мою программную клавишу? –

+0

Возможно, они не сделали никакого динамического эффекта. Клавиатура должна активно решать вызвать функцию действия, а не посылать \ n нажатие клавиши, это не магия для Android, переводящая между ними. И с моего времени в Swype около 50% пользователей ненавидели его, когда это делали, и просто хотели, чтобы он всегда был новой. Так что любая клавиатура, используемая вами, может решиться не делать это нарочно. –

+0

В принципе, все, что вы говорите на клавиатуре, - это запрос. Он может или не может почитать его. Ура, когда он это делает, но не ожидайте этого. –