목차
- 안드로이드 스튜디오 앱 프로젝트 생성 예제 이전 포스팅 참고 학습
- 안드로이드 TextView 출력 예제 이전 포스팅 참고 학습
- 안드로이드 레이아웃 XML에 EditText 추가 예제
- 안드로이드 버튼 누르면 EditText 텍스트 가져오기 예제(getText)
- 안드로이드 EditText 입력 방지 예제(setEnabled)
안드로이드 스튜디오 앱 프로젝트 생성 예제 이전 포스팅 참고 학습
이전 포스팅에서는 안드로이드 스튜디오로 앱 프로젝트를 생성하는 예제를 알아보았습니다. 오늘 예제를 실행하기에 앞서 테스트 앱 프로젝트를 생성할 줄 알아야합니다.
따라서 아직 신규 프로젝트 생성 방법을 잘 모르신다면 아래 링크를 참고하여 학습해주세요.
2023.08.22 - [Android] - [안드로이드] 프로젝트 생성 예제(로그출력, TextView)
안드로이드 TextView 출력 예제 이전 포스팅 참고 학습
또한 이전 포스팅에서 TextView를 사용하여 텍스트를 출력하는 방법에 대해 알아보았습니다. 텍스트 변경, 폰트 크기, 폰트 색상 변경을 코드에서 처리하는 방법도 확인하였습니다.
이처럼 폰트 관련 예제를 확인하고 싶으신 분은 아래 링크를 참고하여 학습해주세요.
2023.08.22 - [Android] - [안드로이드] TextView 출력 예제(폰트 크기, 색상 변경)
안드로이드 레이아웃 XML에 EditText 추가 예제
아래는 EditText를 레이아웃 XML에 추가하는 예제입니다. 추후 EditText에 접근하여 텍스트를 가져오거나 하위 속성 값을 변경 및 참조하기 위하여 id를 부여해야합니다. MainActivity.xml에서 EditText를 추가합니다.
또한 버튼 클릭시 EditText의 텍스트를 가져와 TextView에 나타내야하기 때문에 TextView와 Button도 추가합니다.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:id="@+id/test_tv"
android:text="comment"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/test_edit"/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/test_btn"
android:text="btn" />
</LinearLayout>
안드로이드 버튼 누르면 EditText 텍스트 가져오기 예제(getText)
아래는 버튼을 누르면 사용자가 입력한 텍스트를 EditText에서 가져와 TextView에 설정하는 예제입니다. findViewById() 메서드로 EditText를 찾고, getText() 메서드를 사용하여 사용자의 입력을 받아올 수 있습니다.
package com.example.blog_test_app;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv = (TextView)findViewById(R.id.test_tv);
EditText edit = (EditText)findViewById(R.id.test_edit);
Button btn = (Button)findViewById(R.id.test_btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String text = edit.getText().toString();
tv.setText(text);
}
});
}
}
안드로이드 EditText 입력 방지 예제(setEnabled)
아래는 EditText의 하위 메소드인 setEnabled 를 활용하여 사용자가 텍스트를 입력할 수 없도록 방지하는 예제입니다. 가끔 프로그래밍을 하다보면 사용자가 입력박스에 입력을 못하도록 방지해야할 때가 있습니다. 이 예제는 이러한 상황에서 사용할 수 있습니다.
package com.example.blog_test_app;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv = (TextView)findViewById(R.id.test_tv);
EditText edit = (EditText)findViewById(R.id.test_edit);
Button btn = (Button)findViewById(R.id.test_btn);
edit.setEnabled(false);
}
}