프레그먼트에서 메뉴 사용하기
프레그먼트에 맞추어 메뉴가 변하는 앱을 본 적이 있을 것이다. 바로 위처럼.
구현도 어렵지 않다. 바로 시작하자.
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 |