Android collapseActionView()已弃用

Android collapseActionView()已弃用,android,search,android-actionbar,deprecated,Android,Search,Android Actionbar,Deprecated,我正在尝试以编程方式关闭操作栏搜索视图。使用代码 MenuItemCompat.collapseActionView(action_search); 工作正常,但collapseActionView显示为已弃用。文件指出 此方法在API级别26.1.0中被弃用。使用 直接折叠ActionView() 所以,我把代码改为 collapseActionView(action_search); 它也可以正常工作,并且显示为已弃用。建议?您看到静态方法MenuItemCompat.collapseA

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

MenuItemCompat.collapseActionView(action_search);
工作正常,但collapseActionView显示为已弃用。文件指出

此方法在API级别26.1.0中被弃用。使用 直接折叠ActionView()

所以,我把代码改为

collapseActionView(action_search);

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

您看到静态方法
MenuItemCompat.collapseActionView(MenuItem)
已被弃用。说明应该使用实例方法
MenuItem.collapseActionView()

然而,你说:

所以,我把代码改为

collapseActionView(action_search);
这真的没有道理。您正在调用哪个对象上的
collapseActionView(MenuItem)
<代码>活动和
片段
没有任何此类方法。此外,您仍在向方法传递
MenuItem
参数;建议的替代方案没有任何理由

我怀疑您所做的是静态导入了
MenuItemCompat.collapseActionView(MenuItem)
方法。检查此项目的导入:

import static android.support.v4.view.MenuItemCompat.collapseActionView;
要修复此问题,请删除您现在拥有的行,并将其替换为:

action_search.collapseActionView();

请注意,这并没有说明
collapseActionView()
已被弃用。

您会看到静态方法
MenuItemCompat.collapseActionView(MenuItem)
已被弃用。说明应该使用实例方法
MenuItem.collapseActionView()

然而,你说:

所以,我把代码改为

collapseActionView(action_search);
这真的没有道理。您正在调用哪个对象上的
collapseActionView(MenuItem)
<代码>活动和
片段
没有任何此类方法。此外,您仍在向方法传递
MenuItem
参数;建议的替代方案没有任何理由

我怀疑您所做的是静态导入了
MenuItemCompat.collapseActionView(MenuItem)
方法。检查此项目的导入:

import static android.support.v4.view.MenuItemCompat.collapseActionView;
要修复此问题,请删除您现在拥有的行,并将其替换为:

action_search.collapseActionView();

请注意,
collapseActionView()
不推荐使用,这一点没有任何说明。

在所有方面都完全正确。感谢您快速、详细、解释清楚的回答。所有问题都完全正确。感谢您快速、详细、解释清楚的回答。