2017-06-01 50 views
0

我已經按照隱藏和顯示菜單項的一些步驟。但不幸的是我的應用程序崩潰。我可能做錯了什麼?活動隱藏菜單項崩潰開始

這是我的活動:

private MenuItem menuItem; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_alcohol_type_page); 

invalidateOptionsMenu(); 
    menuItem.setVisible(false); 
} 

//TOOLBAR SETTINGS 
@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.activity_menu_icon, menu); 

    menuItem = menu.findItem(R.id.view_orders); 

    return super.onCreateOptionsMenu(menu); 
} 

在此先感謝您的幫助! :d

+1

發佈你的stacktrace我想它是空引用。 – Ibrahim

+0

@IbrahimAli是的,先生,你是正確的 –

回答

1

更新

private MenuItem menuItem; 
    private boolean menuItemShow; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_alcohol_type_page); 

    } 

    //TOOLBAR SETTINGS 
    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.activity_menu_icon, menu); 

    menuItem = menu.findItem(R.id.view_orders); 
    menuItem.setVisible(menuItemShow); 
    return super.onCreateOptionsMenu(menu); 
    } 

onCreateOptionsMenu在後的onCreate調用,你不應該設置在onCreate方法菜單項可視性。

+0

是的先生,但我想控制隱藏和顯示菜單項先生。當我在onCreate中隱藏菜單項時,它會崩潰應用程序,我該怎麼做? –

+0

你可以在活動中有一個字段標識menuItem的可見性,並設置菜單項的可見性當我添加示例 – huangsu

+0

時,你可以看看 – huangsu