package org.kosta.test;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.Toast;
import android.support.v4.app.NavUtils;
@SuppressLint({ "ParserError", "ParserError" })
public class MainActivity extends Activity implements OnClickListener{
@Override
public void onClick(View v) {
//체크박스 객체 조회
CheckBox movieCB = (CheckBox) findViewById(R.id.movieCB);
CheckBox musicCB = (CheckBox) findViewById(R.id.musicCB);
CheckBox readringCB = (CheckBox) findViewById(R.id.readingCB);
StringBuffer sb = new StringBuffer();//선택된 checkbox의 text값을 저장
/*
* checkbox메소드
* click() - 체크박스 클릭 효과
* toggle() - 체크 상태 반대로 처리
* isChecked() - 체크 여부 조회(true : 체크상태)
*/
if(movieCB.isChecked()){
sb.append(movieCB.getText()+" ");
}
if(readringCB.isChecked()){
sb.append(readringCB.getText()+" ");
}
if(musicCB.isChecked()){
sb.append(musicCB.getText()+" ");
}
Toast.makeText(this, sb, Toast.LENGTH_SHORT).show();
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
CheckBox chk = (CheckBox)findViewById(R.id.chk);
Button btn = (Button) findViewById(R.id.btn);
btn.setOnClickListener(this);
//CompoundButton.OnCheckedChangeListener
//익명클래스를 이용해 처리
chk.setOnCheckedChangeListener(
new CompoundButton.OnCheckedChangeListener() {
//1 : event 소스, 2 : 체크여부 - true:체크상태
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){//체크 된 상태
Toast.makeText(MainActivity.this, "체크됨", Toast.LENGTH_SHORT).show();//1.메인객체 2. 입력글 3. 보여줄 시간
}else{//체크 해제 상태
Toast.makeText(MainActivity.this, "체크 해제됨", Toast.LENGTH_SHORT).show();//1.메인객체 2. 입력글 3. 보여줄 시간
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<CheckBox
android:id="@+id/chk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="체크하세요"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="선택하세요"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="영화"
android:id="@+id/movieCB"
/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="독서"
android:id="@+id/readingCB"
/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="음악"
android:id="@+id/musicCB"
/>
</LinearLayout>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="선택내용 조회"
android:id="@+id/btn"/>
</LinearLayout>
* 결과
'프로그래밍 > Android' 카테고리의 다른 글
RadioButton 사용하기 (0) | 2012.07.23 |
---|---|
ToggleButtonTest - 버튼 누르면 그림 생겼다 없앴다. (0) | 2012.07.23 |
화면처리 - layout(main.xml) : 한줄,세줄,대문자,숫자,패스워드,textarea처리 (0) | 2012.07.20 |
안드로이드 개발API확인하기 (0) | 2012.07.19 |
Output출력 - 토스트 (0) | 2012.07.19 |