我有一个视频播放器应用程序,您可以在其中搜索视频。我的视频播放器只是一个视图,每当用户实际播放视频时,我都会隐藏并显示。
我将搜索实现为提供片段的 SearchView 菜单项。当您单击视频时,将显示视频播放器视图并播放此类视频。如果按下后退按钮,则应关闭视频播放器。
相反,Android 将我的后按作为触发器,首先折叠操作栏上的搜索视图,然后在第二次按下时,我能够在我的活动中捕获 onBackPressed 方法以关闭视频。
如何在操作折叠之前进行连接,以便我可以在第一次单击时禁用它并关闭我的视频播放器?
我认为正确的方法是将MenuItem.OnActionExpandListener
添加到您的SearchView
项目中。
这样:
searchMenuItem.setOnActionExpandListener(new OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
return true;
}
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
// return true if the item should collapse, false if collapsing should be suppressed.
return false;
}
});
您可以在此处查看官方接口类参考
单击事件时,将第一行添加为searchView.setIconified(false);