메뉴 건너뛰기

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

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

안드로이드 왼쪽 하단부에 있는 하드웨어 버튼인 '메뉴(Menu)' 키를 누르면 
지정된 메뉴들이 나타납니다. 옵션 메뉴라고 하는데, 이 메뉴들을 상황에 따라 동적으로 구성할 필요가 있을 때가 있습니다.

이럴 때는 다음처럼 할 수 있습니다.
(코드의 일부만 발췌입니다. 따라서 아래 코드를 보시고 상황에 맞게 넣어주셔야 합니다.)
 

01.// Option Menu Item
02.private static final int        MENU_OPEN_WEB_BROWSER   = Menu.FIRST + 1;
03.private static final int        MENU_ADD_QUEUE          = MENU_OPEN_WEB_BROWSER + 1;
04.private static final int        MENU_PLAY_QUEUE         = MENU_ADD_QUEUE + 1;
05.private static final int        MENU_LIST               = MENU_PLAY_QUEUE + 1;
06.private static final int        MENU_CONNECT_INFO       = MENU_LIST + 1;
07.private static final int        MENU_DETAILS            = MENU_CONNECT_INFO + 1;
08. 
09.// Dynamic Option Menu
10.private Menu                    m_Menu = null;
11. 
12.@Override
13.public boolean onCreateOptionsMenu(Menu menu)
14.{
15.    m_Menu = menu;
16.     
17.    CheckProperOptionMenu();
18.     
19.    return true;
20.}
21. 
22.private void CheckProperOptionMenu()
23.{
24.    m_Menu.removeItem(MENU_ADD_QUEUE);
25.    m_Menu.removeItem(MENU_PLAY_QUEUE);
26.    m_Menu.removeItem(MENU_LIST);
27.    m_Menu.removeItem(MENU_CONNECT_INFO);
28.    m_Menu.removeItem(MENU_DETAILS);
29.     
30.    if (bIsCurrentFlag == true)
31.    {
32.        m_Menu.add(Menu.NONE, MENU_PLAY_QUEUE, Menu.NONE, R.string.menu_play_queue)
33.        .setIcon(R.drawable.sk_icon_addqueue);
34.    }
35.    else
36.    {
37.        m_Menu.add(Menu.NONE, MENU_ADD_QUEUE, Menu.NONE, R.string.menu_add_to_queue)
38.        .setIcon(R.drawable.sk_icon_addqueue);
39.    }
40.     
41.    m_Menu.add(Menu.NONE, MENU_LIST, Menu.NONE, R.string.menu_list)
42.    .setIcon(R.drawable.sk_icon_list);
43.    m_Menu.add(Menu.NONE, MENU_CONNECT_INFO, Menu.NONE, R.string.menu_connection_info)
44.        .setIcon(R.drawable.sk_icon_connectioninfo);
45.    m_Menu.add(Menu.NONE, MENU_DETAILS, Menu.NONE, R.string.menu_details)
46.    .setIcon(R.drawable.sk_icon_details);
47.}


이런 식으로 작성하시면 상황에 맞는 옵션 메뉴를 구성하실 수 있습니다.


List of Articles
번호 제목 날짜 조회 수
237 안드로이드 - RecyclerView 안에 RecyclerView 구현하기 file 2021.04.02 502
236 안드로이드 - Json 파싱하기 file 2021.04.02 851
235 안드로이드 - 타이머(Timer) 구현하기 2021.04.01 1369
234 안드로이드 - SQLiteDatabase 구현하기 file 2021.04.01 249
233 안드로이드 - 리사이클러 뷰(RecyclerView) 구현 file 2021.04.01 390
232 안드로이드 - 네비게이션 드로어(Navigation Drawer)를 활용하여 슬라이드 메뉴 구현하기 file 2021.04.01 1863
231 안드로이드 - 툴바(ToolBar)를 사용하여 앱바(App Bar) 구현하기 file 2021.04.01 455
230 안드로이드 - 프로그레스바(ProgressBar) 구현하기 file 2021.04.01 451
229 안드로이드 - AsyncTask 구현 예제 file 2021.04.01 280
228 안드로이드 - 액티비티(Activity)와 액티비티 생명 주기(Activity Life Cycle) file 2021.04.01 225
227 안드로이드 - 리스트뷰(ListView) 구현 file 2021.04.01 490
226 안드로이드 - 컨텍스트 메뉴(Context Menu) 사용 예제 file 2021.04.01 207
225 안드로이드 - 옵션 메뉴 (Option Menu) 구현 방법 file 2021.04.01 283
224 안드로이드 - 명시적 인텐트(Explicit Intent)와 암시적 인텐트 (Implicit Intent) file 2021.04.01 324
223 안드로이드 - 날짜 및 시간 정보 입력받기 (DatePickerDialog / TimePickerDialog) file 2021.04.01 1772
222 안드로이드 - setContentView()와 레이아웃 전개자(LayoutInflater) 2021.04.01 227
221 안드로이드 - AlertDialog 사용하여 알림창 띄우는 방법 총정리 file 2021.03.31 690
220 안드로이드 - SnackBar를 사용해 팝업창 띄우기 file 2021.03.31 282
219 안드로이드 - 토스트(Toast) 메시지 사용하기. file 2021.03.31 325
218 안드로이드 - 액티비티(Activity)로부터 결과 데이터 받아오기 file 2021.03.31 483
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved