2016-05-31 46 views
0

在我的電子商務應用程序中,我正在使用cart瀏覽量的購物籃。在這裏更新購物車數量textview我使用invalidateOptionMenu();後點擊購物車導航下一個片段不起作用。即使我試圖在許多方面,但沒有worked.Please幫我invalidateOptionMenu()禁用工具欄菜單的點擊功能

這是我的代碼:

@Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     getMenuInflater().inflate(R.menu.main, menu); 


     badgeLayout = (RelativeLayout) menu.findItem(R.id.badge).getActionView();   /*-------Cart Basket with Counter---------*/ 
     basketCount = (TextView) badgeLayout.findViewById(R.id.counter); 
     CommonUtil.dbUtil.open(); 
     try { 
      MainActivity.basketCount.setText(String.valueOf(CommonUtil.dbUtil.getCartItem().getCount())); 
     } catch (Exception e) { 
      MainActivity.basketCount.setText(String.valueOf("0")); 
     } 

     badgeLayout.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       Toast.makeText(context, "Cart Clicked", Toast.LENGTH_SHORT).show(); 
       /* 
       * menuItemClicked represents ToolBar OverFlow (...) menu is clicked. 
       * */ 
       Config.menuItemClicked = true; 
       SharedPreferences.Editor editor = CommonUtil.pref.edit(); 
       editor.putBoolean("cart_Clicked", Config.menuItemClicked); 
       editor.apply(); 

       Intent next = new Intent(context, ProductActivity.class); 
       startActivity(next); 

      } 
     }); 

     invalidateOptionsMenu(); 
     return super.onCreateOptionsMenu(menu); 
    } 

回答

0

而不是調用invalidateOptionMenu()裏面你onCreateOptionsMenu()你應該把它當你更新count value你設置在basketCountTextView

調用invalidateOptionsMenu()在那裏沒有用,所以當你添加物品到你的購物車時,你應該打電話invalidateOptionsMenu()

+0

好吧...讓我試試 –

+0

@ParamaSudha做了這個幫助或者你遇到的任何問題嗎? –

+0

我在更新我的textview後添加了,但它沒有用過 –