不推荐使用collapseActionView()

时间:2018-01-17 21:14:05

标签: android search android-actionbar deprecated

我正在尝试以编程方式关闭操作栏搜索视图。使用代码

MenuItemCompat.collapseActionView(action_search);

运行正常,但collapseActionView显示为已弃用。文件说明。

  

此方法在API级别26.1.0中已弃用。使用   collapseActionView()直接。

所以,我将代码更改为

collapseActionView(action_search);

也可以正常工作,并且也显示为已弃用。建议?

1 个答案:

答案 0 :(得分:2)

您已经看到静态方法MenuItem.collapseActionView()已被弃用。 The documentation表示您应该使用实例方法collapseActionView(action_search);

但是,你说:

  

所以,我将代码更改为

collapseActionView(MenuItem)

这并没有多大意义。你打电话给Activity的是什么对象? FragmentMenuItem没有任何此类方法。此外,您还在向方法传递MenuItemCompat.collapseActionView(MenuItem)参数;建议的替换根本没有参数。

我怀疑你所做的是静态导入import static android.support.v4.view.MenuItemCompat.collapseActionView; 方法。检查此项目的导入:

action_search.collapseActionView();

要解决此问题,请删除现有的行并将其替换为:

collapseActionView()

请注意,the documentation for MenuItem没有说明{@ 1}}已被弃用。