Jak mogę dodać tekst zastępczyEditText
w klasie, która nie znajduje się w pliku XML?
Mam EditText
w swoim kodzie następujące elementy, które zostaną wyświetlone w alertdialog:
final EditText name = new EditText(this);
Jak mogę dodać tekst zastępczyEditText
w klasie, która nie znajduje się w pliku XML?
Mam EditText
w swoim kodzie następujące elementy, które zostaną wyświetlone w alertdialog:
final EditText name = new EditText(this);
Odpowiedzi:
Ach, okej To czego szukasz setHint(int)
. Po prostu podaj identyfikator zasobu ciągu z pliku XML i możesz zacząć.
A w XML to po prostu android:hint="someText"
android:hint="text"
dostarcza użytkownikowi informacji, które należy wypełnić w szczególności editText
na przykład: - Mam dwa edittext jeden dla wartości liczbowej i drugi dla wartości ciągu. możemy ustawić wskazówkę dla użytkownika, aby mógł zrozumieć, jaką wartość musi dać
android:hint="Please enter phone number"
android:hint="Enter name"
po uruchomieniu aplikacji te dwa teksty edycyjne pokażą wprowadzoną podpowiedź, po kliknięciu przycisku edytuj tekst, a użytkownik może wprowadzić to, czego chce (patrz obraz w trybie luxurymode)
W twojej działalności
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:background="@null"
android:hint="Text Example"
android:padding="5dp"
android:singleLine="true"
android:id="@+id/name"
android:textColor="@color/magenta"/>
W Android Studio możesz dodać Podpowiedź (Place place) poprzez GUI. Najpierw wybierz pole EditText w widoku projektanta. Następnie kliknij Drzewo komponentów Lewa strona IDE (normalnie jest tam, ale może być tam zminimalizowana) Tam możesz zobaczyć Właściwości wybranego EditText. Znajdź pole podpowiedzi, jak poniżej Obraz
Tam możesz dodać Podpowiedź (Place place) do EditText
Jeśli masz na myśli lokalizację, w której dodasz go w układzie. Możesz zdefiniować kontener taki jak FrameLayout i dodać do niego ten EditText podczas jego tworzenia.
<LinearLayout xmlns=".."/>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/container" android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
FrameLayout layout = (FrameLayout) findViewById(R.id.container);
layout.addView(name);
Musisz użyć atrybutu android: wskazówka
<EditText
android:id="@+id/message"
android:hint="<<Your placeholder>>"
/>
W Android Studio możesz przełączyć się z XML -> Widok projektu i kliknąć Komponent w układzie, w tym przypadku pole Edytuj tekst. Spowoduje to wyświetlenie wszystkich odpowiednich atrybutów tego komponentu GUI. Będzie to przydatne, gdy nie znasz wszystkich dostępnych atrybutów.
Byłbyś zaskoczony, widząc, że EditText ma ponad 140 atrybutów dostosowywania.
Jeśli chcesz wstawić tekst do widoku EditText, który pozostaje tam po wybraniu pola (w przeciwieństwie do zachowania podpowiedzi), wykonaj następujące czynności:
W Javie:
// Cast Your EditText as a TextView
((TextView) findViewById(R.id.email)).setText("your Text")
W Kotlinie:
// Cast your EditText into a TextView
// Like this
(findViewById(R.id.email) as TextView).text = "Your Text"
// Or simply like this
findViewById<TextView>(R.id.email).text = "Your Text"