@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ToggleButton tgg = (ToggleButton) findViewById(R.id.tggBtn);//토글버튼의 상태를 받아옴 tgg.setOnCheckedChangeListener(new OnCheckedChangeListener() {//토글버튼이 선택될때마다 상태를 바꿔줌
@Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {//boolean값이 true면 그림을 보여주고, false면 그림을 없애준다. ImageView iv = (ImageView) findViewById(R.id.img);//image값을 얻어옴 if(isChecked){//체크됨 - ImageView에 그림 나오도록 처리 Resources res = getResources();//리소스(자원)을 조회해 주는 객체 Drawable image = res.getDrawable(R.drawable.penguins);//res에 있는 penguins 그림을 얻어옴 iv.setImageDrawable(image);//ImageView에 우리가 찾은 penguins그림을 설정해줌. }else{//체크해제 - 그림 안보이도록 처리 iv.setImageDrawable(null);//imageView에 null을 넣어서 그림이 안보이도록 처리 }
<?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" > <ToggleButton android:layout_width="match_parent" android:layout_height="wrap_content" android:textOn="hide" android:textOff="show" android:id="@+id/tggBtn" /> <!-- ImageView는 drawble에 있는 그림을 보여준다.리소스의 이름은 대문자가 들어가면 안된다(사진명) --> <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/img" android:contentDescription="image"/><!-- 풍선모양으로 그림의 설명을 보고 싶을 때 사용 -->