이벤트를 구현하는 방법 1
: 직접 클래스에서 onClickListener를 통해 이벤트를 구현
1. 레이아웃
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.progdv.chap06_toastevent.MainActivity">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="당신의 출생지를 선택하세요." />
<Button
android:id="@+id/btn1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="서울"
/>
<Button
android:id="@+id/btn2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="대전"
/>
<Button
android:id="@+id/btn3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="광주"
/>
<Button
android:id="@+id/btn4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="부산"
/>
<Button
android:id="@+id/btn5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="익산"
/>
<Button
android:id="@+id/btn6"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="제주"
/>
<TextView
android:id="@+id/result"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="" />
</LinearLayout>
</RelativeLayout>
2. 클래스
직접 클래스에서 onClickListener를 통해 이벤트를 구현한다.
package com.progdv.chap06_toastevent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
TextView result;
Button btn1, btn2, btn3, btn4, btn5, btn6;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
result = (TextView)findViewById(R.id.result);
btn1 = (Button)findViewById(R.id.btn1);
btn2 = (Button)findViewById(R.id.btn2);
btn3 = (Button)findViewById(R.id.btn3);
btn4 = (Button)findViewById(R.id.btn4);
btn5 = (Button)findViewById(R.id.btn5);
btn6 = (Button)findViewById(R.id.btn6);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
btn5.setOnClickListener(this);
btn6.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String msg = null;
if(v.getId() == R.id.btn1){
msg = "당신은 서울에서 태어났군요!";
}else if(v.getId() == R.id.btn2){
msg = "당신은 대전에서 태어났군요!";
}else if(v.getId() == R.id.btn3){
msg = "당신은 대구에서 태어났군요!";
}else if(v.getId() == R.id.btn4){
msg = "당신은 부산에서 태어났군요!";
}else if(v.getId() == R.id.btn5){
msg = "당신은 익산에서 태어났군요!";
}else if(v.getId() == R.id.btn6){
msg = "당신은 광주에서 태어났군요!";
}else{
msg = "잘못 입력하셨습니다.";
}
result.setText(msg);
}
}
이벤트를 구현하는 방법 2: Toast
: Toast 객체를 이용한 방법
1. 레이아웃은 위와 동일
2. 클래스는 Toast를 이용해서 show()를 통해 바로 보여주는 방식
package com.progdv.app02_toast;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
TextView result;
Button btn1, btn2, btn3, btn4, btn5, btn6;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
result = (TextView)findViewById(R.id.result);
btn1 = (Button)findViewById(R.id.btn1);
btn2 = (Button)findViewById(R.id.btn2);
btn3 = (Button)findViewById(R.id.btn3);
btn4 = (Button)findViewById(R.id.btn4);
btn5 = (Button)findViewById(R.id.btn5);
btn6 = (Button)findViewById(R.id.btn6);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "당신은 서울에서 태어났군요!", Toast.LENGTH_SHORT).show();}
});
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "당신은 대전에서 태어났군요!", Toast.LENGTH_SHORT).show();}
});
btn3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "당신은 대구에서 태어났군요!", Toast.LENGTH_SHORT).show();}
});
btn4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "당신은 부산에서 태어났군요!", Toast.LENGTH_SHORT).show();}
});
btn5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "당신은 익산에서 태어났군요!", Toast.LENGTH_SHORT).show();}
});
btn6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "당신은 광주에서 태어났군요!", Toast.LENGTH_SHORT).show();}
});
}
}
'안드로이드' 카테고리의 다른 글
액션바 ActionBar_Items (0) | 2016.04.28 |
---|---|
Toast: 랜덤 숫자 맞추기 게임 (0) | 2016.04.26 |
그리드 뷰 (GridView) (0) | 2016.04.26 |
AdapterView: Spinner (0) | 2016.04.26 |
AdapterView: Custom Adapter 만들기 (0) | 2016.04.25 |