在按下时阻止SearchView折叠

时间:2018-03-13 11:59:10

标签: android

我有一个视频播放器应用,您可以在其中搜索视频。我的视频播放器只是一个隐藏的视图,只要用户实际播放视频就会显示。

我将Search实现为提供片段的SearchView菜单项。当您点击视频时,视频播放器视图将显示并播放此类视频。如果您按下后退按钮,则应关闭视频播放器。

相反,Android首先按下我的按键作为触发器,首先在操作栏上折叠搜索视图,然后在第二次按下时,我能够在我的活动中捕获onBackPressed方法来关闭视频。

如何在操作折叠之前挂机,以便我可以禁用它并在第一次点击时关闭我的视频播放器?

2 个答案:

答案 0 :(得分:6)

我认为执行此操作的正确方法是将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;
    }
});

您可以查看官方界面类参考here

答案 1 :(得分:0)

在点击事件中,将第一行添加为searchView.setIconified(false);