반응형
Ex02Widget
안드로이드 네이티브 앱 개발 수업 예제#2
주요코드
Button 클릭 이벤트를 통해 TextView의 글씨변경 및 EditText를 통한 사용자 입력
- res폴더>>layout폴더안에 있는 activity_main.xml문서를 수정하여 화면제작
- 버튼을 클릭하였을 때 사용자가 EditText를 통해 입력한 글씨를 얻어와서 TextView의 글씨를 변경해보기
- 안드로이드 이벤트처리 기법을 알아보는 예제로서 리스너객체에 대한 이해 및 활용
실행모습
실행모습 GIF
소스코드
# activity_main.xml |
<?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"
android:padding="16dp"
tools:context=".MainActivity">
<!--텍스트뷰의 글씨나 속성을 변경하는 등의 제어를 하려면 .java에서 이 텍스트뷰를 참조해야함-->
<!--참조하려면 반드시 View들은 id속성을 가지고 있어야함.- View를 구별하는 식별자 -->
<TextView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hello"
android:textSize="40sp"
android:textStyle="bold"
android:gravity="center_horizontal"/>
<!--버튼에 text속성으로 글씨를 지정하면 자동으로 대문자로 보여짐-->
<!--textAllCaps속성으로 대문자로 할지 여부 지정 [true/false]-->
<Button
android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button"
android:textAllCaps="false"/>
<!-- 먼저 작성하고 버튼클릭시에 텍스트뷰의 글씨 변경 연습. MainActivity.java에서 코드작성-->
<!-- 연습 완료 후 사용자로 부터 글씨를 입력받을 수 있는 EditText 뷰를 추가-->
<!-- 사용자로부터 글씨를 입력받을 수 있는 뷰-->
<!-- hint : 글씨를 입력하기 전에 회색으로 보여지는 힌트글씨 지정 - 글씨를 입력하면 자동으로 안보임 -->
<EditText
android:id="@+id/edit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="input text"
android:textSize="20sp"/>
</LinearLayout>
# MainActivity.java |
package com.kitesoft.ex02widget;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
//멤버변수
TextView tv; //참조변수
Button btn;
EditText edit;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//xml에서 만들어진 View객체를 id로 찾아와서 참조변수에 대입
tv= findViewById(R.id.tv);
btn= findViewById(R.id.btn);
edit= findViewById(R.id.edit);
//버튼이 클릭되는 것을 듣는 리스너객체 생성 및 추가
btn.setOnClickListener(new View.OnClickListener() {
//버튼을 클릭하면 자동으로 실행되는 콜백메소드
@Override
public void onClick(View view) {
//EditText에 써있는 글씨를 얻어오기.
Editable editable= edit.getText();
String s= editable.toString();
//얻어온 글씨를 TextView에 설정
tv.setText(s);
}
});
}
}
반응형
'Android 앱 개발 수업' 카테고리의 다른 글
[ Android ] CheckBox, ToggleButton, Switch - 안드로이드 앱 프로그래밍 수업 예제#4 (0) | 2020.05.21 |
---|---|
[ Android ] ImageView - 안드로이드 앱 프로그래밍 수업 예제#3 (0) | 2020.05.21 |
[ Android ] TextView - 안드로이드 앱 프로그래밍 수업 예제#1 (0) | 2020.05.21 |
[ Android HelloByJava ] 두번째 안드로이드 네이티브 앱 개발 수업 예제 : 자바언어만을 사용하여 화면제작 (0) | 2020.05.21 |
[ Android Hello ] 첫번째 안드로이드 네이티브 앱 개발 수업 예제 (0) | 2020.05.21 |