This question already has an answer here:
How to cast MenuItem to LinearLayout

(1个答案)


去年关闭。




波纹管代码工作正常,但它给了我setActionView和getActionView已弃用
     val item = menu?.findItem(R.id.action_mini_basket)
     MenuItemCompat.setActionView(item,R.layout.toolbar_mini_basket_layout)
     val toolbarLayout = MenuItemCompat.getActionView(item)

android开发人员网站说:“此方法在API级别26.1.0中已弃用。直接使用setActionView(int)。”
我设法修复了getActionView,但不知道setActionView它只需要一个参数。
     val item = menu?.findItem(R.id.action_mini_basket)
     MenuItemCompat.setActionView(item,R.layout.toolbar_mini_basket_layout) //??
     val toolbarLayout = item.actionView as RelativeLayout


谢谢

最佳答案

更改

MenuItemCompat.setActionView(item,R.layout.toolbar_mini_basket_layout);


 item.setActionView(R.layout.toolbar_mini_basket_layout);

如果您正在使用Compat,则不再需要AppCompatActivity版本

10-07 15:32