EditText에서 텍스트를 설정하는 방법


답변:


244

에 대한 문서를 확인하면 방법을 EditText찾을 수 setText()있습니다. a StringTextView.BufferType. 예를 들면 :

EditText editText = (EditText)findViewById(R.id.edit_text);
editText.setText("Google is your friend.", TextView.BufferType.EDITABLE);

또한 TextViewsetText(CharSequence)setText(int)메서드를 상속 하므로 일반처럼 설정할 수 있습니다 TextView.

editText.setText("Hello world!");
editText.setText(R.string.hello_world);

6
EditText.BufferType.EDITABLE?
sll

3
아니요, EditText연장합니다 TextView. TextView.BufferType.EDITABLE올바른 상수입니다.
Kevin Coppock 2011

4
초보자에게 혼동을 줄 수있는 것은 setText가 실제로 CharSequence와 BufferType을 취한다는 것입니다. 그것을 기억하는 것이 유용 그래서 문자열의 CharSequence의 있습니다
Avatar33

6
android.text.Editable이 존재하는 이유는 무엇입니까? 아니면 일반 개발자가 EditText가 void setText (CharSequence) 메서드를 노출하는 대신 탐색해야하는 이유는 무엇입니까?
Marcelo Lacerda 2016

3
@MarceloLacerda 그것 setText(CharSequence)의 슈퍼 클래스에서 노출 TextView합니다. 그래서 왜 이것이 가장 많이 찬성되고 받아 들여지는 대답인지 잘 모르겠습니다.
Hendy Irawan

21
String string="this is a text";
editText.setText(string)

String이 CharSequence의 유용한 간접 하위 클래스임을 발견했습니다.

http://developer.android.com/reference/android/widget/TextView.html find setText (CharSequence text)

http://developer.android.com/reference/java/lang/CharSequence.html


모든 문자열은 CharSequences이므로 이것은 작동하지만 원시 CharSequence는 문자열이 아닙니다. 원시 CharSequence가 있고 문자열이 필요하면 myCharSequence.toString ()을 호출하여 공식 문자열을 가져와야합니다. 이 응용 프로그램에 대해 알 필요는 없지만 때로는 다른 곳에서 이것이 필요합니다.
DragonLord

6
String text = "Example";
EditText edtText = (EditText) findViewById(R.id.edtText);
edtText.setText(text);

그것을 체크 아웃 EditText문자열에 필요한 변환을 경우에만 문자열 값을 받아들입니다.

int, double, long 값이면 다음을 수행하십시오.

String.value(value);

3

+, 문자열 연결 연산자를 사용하십시오.

 ed = (EditText) findViewById (R.id.box);
    int x = 10;
    ed.setText(""+x);

또는 사용

String.valueOf(int):
ed.setText(String.valueOf(x));

또는 사용

Integer.toString(int):
ed.setText(Integer.toString(x));

3

이것이 Kotlin의 솔루션입니다.

val editText: EditText = findViewById(R.id.main_et_name)
    editText.setText("This is a text.")

2

당신은 설정할 수 있습니다 android:text="your text";

<EditText
    android:id="@+id/editTextName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/intro_name"/>


1

다음을 수행해야합니다.

  1. 선언 EditText in the xml file
  2. EditText활동에서 찾기
  3. 텍스트 설정 EditText

1

Android Java의 솔루션 :

  1. EditText를 시작하면 ID가 xml ID로 나옵니다.

    EditText myText = (EditText)findViewById(R.id.my_text_id);
  2. OnCreate 메서드에서 정의 된 이름으로 텍스트를 설정하기 만하면됩니다.

    String text = "here put the text that you want"
  3. editText에서 setText 메소드를 사용하십시오.

    myText.setText(text); //variable from point 2

0

xml파일 에서 디자인 타임에 텍스트를 설정하려면 android:text="username"이 속성을 추가하면됩니다.

<EditText
    android:id="@+id/edtUsername"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="username"/>

Java에서 프로그래밍 방식으로 텍스트를 설정하려는 경우

EditText edtUsername = findViewById(R.id.edtUsername);
edtUsername.setText("username");

kotlingetter / setter를 사용하는 Java 와 동일

edtUsername.setText("username")

하지만 .text원칙적 으로 사용하려면

edtUsername.text = Editable.Factory.getInstance().newEditable("username")

처음 EditText.text에는 필요 editable하지 않기 때문에String

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