Android, EditText'e yer tutucu metin ekle


365

XML'de olmayan sınıfa nasıl yer tutucu metin ekleyebilirim EditText?

Ben EditTextalertdialog gösterilecek benim kodda aşağıdaki var :

    final EditText name = new EditText(this);

1
Yer tutucu ile ne demek istiyorsun?
LuxuryMode

4
Metin çubuklarındaki açık renkle yazılan metindir ve kullanıcı metnin kaybolacağı bir şey yazmak için metin çubuğuna tıkladığında.
Mona

Yanıtlar:


831

Ah tamam. Aradığın şey setHint(int). Basitçe xml'nizden bir dizenin kaynak kimliğini girin ve hazırsınız.

resim açıklamasını buraya girin

DÜZENLE

Ve XML'de, basitçe android:hint="someText"


6
Teşekkürler! Android'de ne dediklerini bilmiyordum, sadece iOS'ta bunun yer tutucu olarak adlandırıldığını biliyorum.
Mona

39
Evrensel olarak bir yer tutucu olarak bilinir, ancak elbette android sadece farklı olmak için farklıdır;)
Joe Maher

21

android:hint="text" kullanıcı için özellikle doldurması gerekenler hakkında bilgi verir editText

Örneğin: - Ben bir tane sayısal değer ve diğeri dize değeri için iki düzenleme metni var. kullanıcı için bir ipucu verebiliriz, böylece hangi değere vermesi gerektiğini anlayabilir.

android:hint="Please enter phone number"
android:hint="Enter name" 

Uygulamayı çalıştırdıktan sonra bu iki düzenleme metni girilen ipucunu gösterecektir, metni düzenle üzerine tıkladıktan sonra kullanıcı istediği şeyi girebilir (lüks mod resmine bakın)


Buna android ipucu denir.
Monty

11

Faaliyetinizde

<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"/>

resim açıklamasını buraya girin


7

Bu nasıl dönüştürülür ipucu olan giriş şifresi yapmak için * !!.

XML'de:

android:inputType="textPassword"
android:gravity="center"
android:ellipsize="start"
android:hint="Input Password !."

teşekkürler: içgörü için mango ve rjrjr: D.


5

Android Studio'da GUI aracılığıyla İpucu (Yer tutucu) ekleyebilirsiniz. Önce tasarımcı görünümünde EditText alanını seçin. Ardından IDE'nin Bileşen Ağacı'na tıklayın (Normalde oradadır, ancak simge durumuna küçültülmüş olabilir) Burada , seçilen EditText'in özelliklerini görebilirsiniz . Aşağıdaki gibi İpucu alanını bulun Image

resim açıklamasını buraya girin

Orada EditText'e İpucu (Yer tutucu) ekleyebilirsiniz


3

Düzene ekleyeceğiniz konumu kastediyorsanız. FrameLayout gibi bir kap tanımlayabilir ve oluşturulduğunda bu EditText'i ona ekleyebilirsiniz.

<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);

1

Android: ipucu niteliğini kullanmak zorunda

<EditText
android:id="@+id/message"
android:hint="<<Your placeholder>>"
/>

Android Studio'da XML -> Tasarım Görünümü'nden geçiş yapabilir ve bu durumda mizanpajdaki Bileşeni, EditText alanını tıklatabilirsiniz. Bu, söz konusu GUI bileşeni için geçerli tüm özellikleri gösterir. Buradaki tüm öznitelikleri bilmediğinizde kullanışlı olacaktır.

EditText'in özelleştirme için 140'tan fazla özelliği olduğunu görünce şaşıracaksınız.


0

EditText görünümünüze alan seçildikten sonra orada kalan metni eklemek istiyorsanız (ipucunun nasıl davrandığından farklı olarak), bunu yapın:

Java dilinde:

// Cast Your EditText as a TextView
((TextView) findViewById(R.id.email)).setText("your Text")

Kotlin'de:

// 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"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.