[안드로이드 프로그래밍] 이미지 버튼 설정

     

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package org.androidtown.ui.bitmap.selector;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.Toast;
 
/**
 * 비트맵 Selector를 이용해 비트맵 버튼을 만드는 방법을 알 수 있습니다.
 * 
 * @author Mike
 */
public class MainActivity extends Activity {
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        // 타이틀 부분 없애기
        requestWindowFeature(Window.FEATURE_NO_TITLE);
 
        setContentView(R.layout.activity_main);
 
        // 버튼 이벤트 처리
        Button arrowLeftBtn = (Button)findViewById(R.id.arrowLeftBtn);
        arrowLeftBtn.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Toast.makeText(getApplicationContext(), "버튼이 눌렸어요.", Toast.LENGTH_SHORT).show();
            }
        });
    }
 
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}
 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<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" >
 
    <Button
        android:id="@+id/arrowLeftBtn"
        android:layout_width="92dp"
        android:layout_height="92dp"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:background="@drawable/button_selector" />
 
</RelativeLayout>
 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_focused="true"
        android:state_pressed="false"
        android:drawable="@drawable/arrow_left_clicked"
        />
    <item
        android:state_focused="true"
        android:state_pressed="true"
        android:drawable="@drawable/arrow_left_clicked"
        />
    <item
        android:state_focused="false"
        android:state_pressed="true"
        android:drawable="@drawable/arrow_left_clicked"
        />
    <item
        android:drawable="@drawable/arrow_left_normal"
        />
</selector>

 

 

레이아웃에서 drawable에서 선언한 button_select를 해당 뷰로 불러오면 buton_select에서 정의한대로 그림이 나온다. 이미지 버튼이 클릭했을때와 클릭하지 않았을때 이미지를 한번에 정의할 수 있다.  

반응형

댓글

Designed by JB FACTORY