0

我已經建立在Eclipse主/詳細信息流模板的應用程序(我第一次)。 我已經添加actionbarsherlock成功的項目和應用程序將運行到10 API,但每當我試圖打電話mItem.idonCreateOptionsMenu()在我的細節片段(選擇的列表項的ID)在任何低於API 16(機器人4.1)mItem.id爲空。 API 17 & 18沒有問題,似乎在操作欄之前聲明瞭項目標識。OnCreateOptionsMenu崩潰低於API級別16

片段類

public class ModuleDetailFragment extends SherlockFragment implements OnClickListener { 
    //The fragment argument representing the item ID that this fragment represents. 
    public static final String ARG_ITEM_ID = "item_id"; 
    // The content this fragment is presenting. 
    public ModuleList.ModuleItem mItem; 

和onCreateOptionsMenu:

@Override         
public void onCreateOptionsMenu(Menu menu, MenuInflater mi) { 
    Toast.makeText(getActivity(), "item id = "+mItem.id, Toast.LENGTH_SHORT).show(); 
} 

我有if語句識別按下按鈕,顯示正確的動作條菜單項,但這足以引起死機。

任何指針將不勝感激,谷歌迄今已返回很少。

問候,

+0

是否有任何其他信息,我可以補充,這將有助於任何潛在的答覆者?我錯過了明顯的東西嗎? – staticlife

回答

0

最終想通了,能夠查詢內部版本,並與getActivity().invalidateOptionsMenu();

可能不會宣佈預傑利貝恩API的變量之後重新初始化菜單欄最有效的解決方案,但它爲我工作(無論如何,蜂窩向上)。

相關問題