下面的代码可以正常工作,但是它给了我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
谢谢
答案 0 :(得分:1)
更改
MenuItemCompat.setActionView(item,R.layout.toolbar_mini_basket_layout);
到
item.setActionView(R.layout.toolbar_mini_basket_layout);
如果您使用的是Compat
,则不再需要 AppCompatActivity
版本
答案 1 :(得分:0)
根据Android文档,您确实确实需要使用setActionView(int)
。
在这种情况下,该参数是您要使用的布局资源。
它将是:
MenuItemCompat.setActionView(R.layout.toolbar_mini_basket_layout)