이번에는 버튼이 눌리면 글자가 바뀌는 간단한 어플을 만들어봅시다.
이때 필요한 것은 리스너라는 것인데 리스너는 귀를 귀울이다라는 뜻으로 생각하면 됩니다.
자세한 건 소스에 있습니다.
activity_main.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
>
<TextView
android:id="@+id/fruit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ffff00"
android:textSize="20pt"
android:text="과일"
>
</TextView>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/apple"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Apple"
>
</Button>
<Button
android:id="@+id/orange"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Orange"
>
</Button>
</LinearLayout>
</LinearLayout>
MainActivity.java
package com.example.fruit;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnApple=(Button)findViewById(R.id.apple);
btnApple.setOnClickListener(mListener);//리스너등록
Button btnOrange=(Button)findViewById(R.id.orange);
btnOrange.setOnClickListener(mListener);
}
OnClickListener mListener = new OnClickListener() {//리스너 인터페이스를 정의를함.
//리스너는 인터페이스이므로 추상메소드를 반드시 정의해줘야됨.
//onClick 메소드를 정의함
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TextView textFruit=(TextView)findViewById(R.id.fruit);
switch(v.getId()){
case R.id.apple://apple버튼이 눌렸을 때
textFruit.setText("Apple");
break;
case R.id.orange://orange 버튼이 눌렸을 때
textFruit.setText("Orange");
break;
}
}
};
}
리스너 등록방법이 이외에도 여러가지가 있는데 이 방법이 저는 가장 편해서 즐겨 사용합니다.
결과화면
'프로그래밍 > 안드로이드' 카테고리의 다른 글
안드로이드 쓰레드 3번째 쓰레드를 구현하는 클래스와 메인 클래스를 따로 만들어서 처리해보자 (0) | 2012.08.21 |
---|---|
안드로이드 쓰레드 구현 2번째 방법 post 메소드를 이용하자. (0) | 2012.08.21 |
안드로이드 쓰레드 첫번째 예제 handleMessage 구현하는 방법 (1) | 2012.08.21 |
안드로이드 Context Menu를 만들어보자. (0) | 2012.08.16 |
안드로이드 Toast 메시지에 내가 원하는 그림을 넣어보자 (2) | 2012.08.13 |
안드로이드 스마트폰 진동을 내맘대로 다뤄보자 (0) | 2012.08.03 |
사운드폴을 이용한 음악파일 출력 (0) | 2012.08.03 |
안드로이드 비프음을 내보자. (1) | 2012.08.03 |