2017-10-07 82 views
0

getActionView總是返回null:如何在Android的導航抽屜中的菜單項上使用setOnLongClickListener?

public boolean onNavigationItemSelected(MenuItem item) { 
    item.getActionView().setOnLongClickListener(new View.OnLongClickListener() { 
     @Override 
     public boolean onLongClick(View v) { 
      Toast toast = Toast.makeText(
       getApplicationContext(), "Hello, World!", Toast.LENGTH_SHORT); 
      toast.show(); 
      return false; 
     } 
    }); 
} 

我不慣於使用其它的佈局,我想設置項目長按。

+0

添加觸摸監聽跟蹤後 https://stackoverflow.com/a/46618738/4456860 – leopragi

回答

0
  1. 膨脹:查看視圖=新視圖(this);
  2. 設置監聽者:view.setOnLongClickListener();
  3. 設置操作視圖:menuItem.setActionView(view);
+0

當我設置來看,我的項目並不像我想:( – superpuper

+0

@superpuper是啊,你是對的。這個代碼在menuItem的右邊添加了視圖。 –

+0

我也進行了一個小問題的研究,發現即使你可以訪問menuItem視圖的實例設置longclicklistener不起作用。 –

相關問題