/ / Android Edittext pytanie, zamień wpisywanie klawiatury na gotowe - xml, android

Pytanie Android Edittext, zamień wprowadzoną klawiaturę na gotowe - xml, android

Definiuję tekst edycji, tak jak ...

<EditText
android:id="@+id/user"
android:layout_width="200px"
android:layout_height="wrap_content"
android:text="Username"
android:textSize="18sp"
android:gravity="center"
android:layout_x="64px"
android:layout_y="140px"
>

Chciałbym zastąpić przycisk "enter", którypojawi się na klawiaturze automatycznie, po naciśnięciu przycisku, który po prostu zamknie klawiaturę, gdy użytkownik ją uderzy. Widziałem to już w kilku aplikacjach (np. Nexus One na Twitterze) i chciałbym zaimplementować coś podobnego. Czy ktoś wie jak?

Czy jest możliwe, aby tekst, który pojawia się domyślnie, automatycznie czyścił, gdy użytkownik kliknął, aby edytować edittext? Dzięki,

Odpowiedzi:

11 dla odpowiedzi nr 1

Proste rozwiązanie: dodaj android:singleLine="true" dla EditText. Spowoduje to zastąpienie wprowadzania następną (dla wszystkich editekstów z wyjątkiem ostatniej) i Gotowe (dla ostatniej).


4 dla odpowiedzi nr 2

Wystarczy dodać XML EditText: android:imeOptions="actionDone"


2 dla odpowiedzi nr 3

O drugim pytaniu, które sprawi, że tekst będzie automatycznie kasowany, należy go dołączyć android:hint zamiast android:text.


2 dla odpowiedzi № 4

Oto zaktualizowana odpowiedź:

android:maxLines="1"

Przyjęta odpowiedź android:singleLine="true" został przestarzały.


1 dla odpowiedzi nr 5
android:imeOptions="actionNext"

Zastępuje nazwę klawisza Enter za pomocą "Dalej" na wirtualnej klawiaturze i klikając na nią - fokus przeskakuje do następnego pola

W twoim układzie robisz takie rzeczy

<EditText
...
android:text="Field 1"
android:imeOptions="actionNext" />
<EditText
...
android:text="Field 2"
android:imeOptions="actionNext" />

I w Javie

TextView field2 = (TextView) field1.focusSearch(View.FOCUS_RIGHT);
field2.requestFocus();

Od Ciebie zależy, które pole poprosi o fokus.