본문 바로가기

Android/Application

프레그먼트에서 메뉴 사용하기

프레그먼트에서 메뉴 사용하기




프레그먼트에 맞추어 메뉴가 변하는 앱을 본 적이 있을 것이다. 바로 위처럼.

구현도 어렵지 않다. 바로 시작하자.


STEP1> 메뉴가 있음을 알림




@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
setHasOptionsMenu(true);
return inflater.inflate(R.layout.fragment_interest, container, false);
}


간단하다. onCreateView에서 setHasOptionsMenu(true)를 하면 된다. 이 명령이 있어야 액티비티보다 프레그먼트의 메뉴가 우선된다.

STEP2로 가기 전에 메뉴의 xml을 미리 만들어두기 바란다.






STEP2> 메뉴 생성



@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.menu_main_interest, menu);
}


inflater.inflate(R.menu.메뉴_ID, menu)를 사용한다. 적절히 만들어둔 메뉴의 ID를 사용하자.





STEP3> 메뉴 이벤트 설정



@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_main_interest_clip:
System.out.println("Clip clicked!");
break;
}
return super.onOptionsItemSelected(item);
}

액티비티에서 하던 방식과 다르지 않다. 적절히 switch-case문을 사용하자







'Android > Application' 카테고리의 다른 글

멋진 로딩 스플래시 화면 만들기  (0) 2015.09.24
Toolbar 사용하기  (0) 2015.09.24
ViewPager 구현하기  (1) 2015.09.24
Android SearchView  (0) 2015.09.23
안드로이드 상태바 색상 변경  (0) 2015.09.23