setHasOptionsMenu(ture), 通常會放在onCreate()中, 然後再override onCreateOptionMenu(Menu menu, MenuInflater inflater)
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
getActivity().getMenuInflater().inflate(R.menu.menu_main, menu);
super.onCreateOptionsMenu(menu, inflater);
}
需注意與在Activity使用, 稍稍不太一樣,差異不大, 僅差在有無回傳值
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return super.onCreateOptionsMenu(menu);
}
因為Fragment是依附在Activity上, 因此我們必須用getActivity()來取得Context,
才能夠使用Inflater這個東東。
最後我們就可以覆寫onOptionsItemSelected(MenuItem item)來撰寫各個item的處理事件
public boolean onOptionsItemSelected(MenuItem item) {
......
return super.onOptionsItemSelected(item);
}
沒有留言:
張貼留言