Android는 EditText에 자리 표시 자 텍스트 추가


365

XML에없는 클래스에 자리 표시 자 텍스트를 추가하려면 어떻게 EditText해야합니까?

EditText내 경고 에는 다음과 같은 경고 대화 상자가 표시됩니다.

    final EditText name = new EditText(this);

1
자리 표시자는 무슨 뜻입니까?
LuxuryMode

4
텍스트 막대에 연한 색으로 쓰여진 텍스트이며 사용자가 텍스트 막대를 클릭하면 텍스트가 사라지는 것을 쓸 수 있습니다.
Mona

답변:


831

그래. 당신이 찾고있는 것은입니다 setHint(int). XML에서 문자열의 리소스 ID를 전달하기 만하면됩니다.

여기에 이미지 설명을 입력하십시오

편집하다

그리고 XML에서는 간단합니다. android:hint="someText"


6
감사! 나는 그들이 안드로이드에서 그것을 부르는 것을 몰랐다. 나는 단지 iOS에서 플레이스 홀더라고 부른다.
Mona

39
그것은 일반적으로 자리 표시 자로 알려져 있지만, 물론 안드로이드는 다릅니다.;
Joe Maher

21

android:hint="text" 사용자가 구체적으로 작성해야하는 정보를 제공합니다. editText

예를 들면 :-숫자 값과 문자열 값에 대한 두 개의 편집 텍스트가 있습니다. 사용자에게 힌트를 줄 수있어 어떤 가치를 주어야하는지 이해할 수 있습니다.

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

응용 프로그램을 실행 한 후이 두 개의 편집 텍스트는 입력 된 힌트를 표시하고 편집 텍스트를 클릭 한 후 사용자가 원하는 것을 입력 할 수 있습니다 (고급 모드 이미지 참조)


이것은 안드로이드에서 힌트라고합니다.
Monty

11

당신의 활동에서

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

여기에 이미지 설명을 입력하십시오


7

이것은 * !!로 변환되지 않은 힌트를 가진 입력 암호를 ​​만드는 방법입니다.

XML에서 :

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

감사 : mango와 rjrjr에 대한 통찰력 : D.


5

Android Studio에서는 GUI를 통해 힌트 (장소 홀더)를 추가 할 수 있습니다. 먼저 디자이너보기에서 EditText 필드를 선택하십시오. 다음을 클릭하여 구성 요소 트리 IDE의 왼쪽 측면 (일반적으로는 거기에 있지만,이 적용될 수 있습니다 최소화)가 당신이 볼 수있는 속성 선택 글고의를. 아래 그림과 같이 힌트 필드를 찾으십시오

여기에 이미지 설명을 입력하십시오

거기에서 EditText에 힌트 (장소 홀더)를 추가 할 수 있습니다


3

레이아웃에서 추가 할 위치를 의미하는 경우 FrameLayout과 같은 컨테이너를 정의하고이 EditText를 만들 때 컨테이너를 추가 할 수 있습니다.

<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 : hint 속성을 사용해야합니다

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

Android Studio에서는 XML-> 디자인보기에서 전환하고 레이아웃의 구성 요소 (이 경우 EditText 필드)를 클릭하십시오. 해당 GUI 구성 요소에 적용 가능한 모든 속성이 표시됩니다. 이것은 당신이 거기에있는 모든 속성에 대해 모른다면 편리합니다.

EditText가 140 개가 넘는 사용자 정의 속성을 가지고 있다는 사실에 놀랄 것입니다.


0

필드가 선택된 후 힌트 동작과 달리 텍스트를 EditText보기 내에 삽입하려면 다음과 같이하십시오.

자바에서 :

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

코 틀린에서 :

// 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"
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.