메뉴 건너뛰기

조회 수 7345 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

안드로이드/Android 컨텍스트메뉴(ContextMenu) 사용 예제 ~!





안드로이드 컨텍스트메뉴(ContextMenu) 사용법 입니다.  기본 메서드의 흐름은 안드로이드 옵션메뉴(OptionMenu)와 비슷한 구조를 가지고 있습니다. 사용법은 특정한 View에 컨텍스트메뉴를 등록해 준 후, View를 일정시간 롱클릭 하면 작동 하게 됩니다.


자세한 컨텍스트메뉴의 메서드 설명은 조만간 다시 포스팅 하도록 하겠습니다.


자 그럼 사용법에 대해 알아보겠습니다.


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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
package arabiannight.tistory.com.contextmenu;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.view.View;
import android.widget.Button;
 
public class MainActivity extends Activity {
 
    final int ONE = 0;
    final int TWO = 1;
    final int THREE = 2;
    final int FOUR = 3;
    final int FIVE = 4;
    final int SIX = 5;
    final int SEVEN = 6;
    final int EIGHT = 7;
    final int NINE = 8;
    final int TEN = 9;
     
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
         
        Button btn = (Button) findViewById(R.id.btn_click);
        Button btn2 = (Button) findViewById(R.id.btn_click2);
         
        registerForContextMenu(btn);
        registerForContextMenu(btn2);
         
    }
 
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenuInfo menuInfo) {
         
            if(v.getId() == R.id.btn_click) {
                 
                getMenuInflater().inflate(R.menu.activity_main, menu);
                 
            } else {
                 
                menu.setHeaderIcon(android.R.drawable.btn_star);
                menu.setHeaderTitle("공지사항");
                menu.add(Menu.NONE, ONE, Menu.NONE, "사과");
                menu.add(Menu.NONE, TWO, Menu.NONE, "배");
                menu.add(Menu.NONE, THREE, Menu.NONE, "감");
                menu.add(Menu.NONE, FOUR, Menu.NONE, "바나나");
                menu.add(Menu.NONE, FIVE, Menu.NONE, "키위");
                menu.add(Menu.NONE, SIX, Menu.NONE, "귤");
                menu.add(Menu.NONE, SEVEN, Menu.NONE, "오렌지");
                 
                // Menu에 SubMenu 추가
                SubMenu subMenu = menu.addSubMenu("하우스과일");
                  
                subMenu.add(1, SIX, Menu.NONE, "방울토마토");
                subMenu.add(1, SEVEN, Menu.NONE, "하우스딸기");
                subMenu.add(1, EIGHT, Menu.NONE, "애호박");
             
            }
         
        super.onCreateContextMenu(menu, v, menuInfo);
    }
     
    @Override
    public boolean onContextItemSelected(MenuItem item) {
         
        switch (item.getItemId()) {
        case ONE:
             
            break;
 
        default:
            break;
        }
         
        return super.onContextItemSelected(item);
    }
     
}




파일첨부 : 

 TestContextMenu.zip



스크린샷 : 

1831FE3C50F6CDA013EBD524236A3C50F6CDA027ADA8

1940C83C50F6CDA001203E1925DD3C50F6CDA023E987




감사합니다.


출저 : http://arabiannight.tistory.com/entry/313

List of Articles
번호 제목 날짜 조회 수
177 ScrollView의 활용 2015.07.16 6530
176 특정 폴더에서 오래된 파일 삭제하기 2015.07.16 6767
175 네트워크를 통해 받은 이미지를 파일로 저장하고, 크기 조절해서 불러오기 2015.07.16 6155
174 화면 해상도에 관계없는 레이아웃(Layout) 만들기 file 2015.07.16 8641
173 화면 회전에 따른 애니메이션 효과 구현하기 2015.07.16 8055
172 이미지의 Orientation를 체크해서 이미지 회전하기 2015.07.16 7658
171 이미지 버튼(ImageButton) 만들기 2015.07.16 7114
170 체크 박스(CheckBox)의 이미지 바꾸기 2015.07.16 6398
169 사용자 정의 팝업창 띄우기 2015.07.16 6337
168 EditText의 글자 수 제한 걸기 2015.07.16 13881
167 옵션 메뉴 동적으로 생성하기 2015.07.16 6926
166 네트워크 상태 변화 감지하기(BroadcastReceiver 사용) 2015.07.16 9935
165 푸쉬 알림 기능. GCM (Google Cloud Messaging) 사용하기 (1) file 2015.07.16 6726
164 푸쉬 알림 기능. GCM (Google Cloud Messaging) 사용하기 (2) file 2015.07.16 7292
163 푸쉬 알림 기능. GCM (Google Cloud Messaging) 사용하기 (3) file 2015.07.16 6267
162 탭 뷰에 탭 추가하기, 아이콘 넣기 file 2015.07.16 9360
161 스토리보드 짜는 방법 file 2015.07.16 15419
160 [안드로이드] Activity에 대해서 file 2015.07.16 6767
159 [안드로이드] 레이아웃의 기본1 file 2015.07.16 6962
158 [안드로이드] 레이아웃의 기본2 file 2015.07.16 7071
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved