0
在我的情况下,我有activity
与2个容器fragments
。 一个容器显示Fragment
带列表,第二个显示所选列表项的详细信息。第二个容器默认为GONE
。SearchView自动关闭
在活动我有SearchView
,我从片段得到哪个实例那样:
@Override
public void onPrepareOptionsMenu(Menu menu) {
MenuItem searchMenuItem = menu.findItem(R.id.action_search);
rxSearchView = (RxSearchView) searchMenuItem.getActionView();
rxSearchView.setSearchListener(taskListPresenter);
rxSearchView.setOnCloseListener(() -> {
taskListPresenter.clearSearch();
return false;
});
}
和,我在OnCreateView();
问题的情况下使用的方法setHasOptionsMenu(true);
:
1。用户点击searchView,并获得过滤元素:
2.用户点击的元素,调用next方法:
`((MainActivity)getActivity()).showSecondaryFragment(TaskDetailFragment.newInstance();`
在MainActivity
它看起来像:
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.ltRightContainer, baseFragment)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.commit();
之后,搜索查看自动关闭,像下面的屏幕。
如何解决这个问题的时刻?我不希望它自动关闭。
RxSearchView
只是包装与RxJava
实施,没有ovverride方法。
我觉得SearchView'一旦失去焦点就会自动关闭。您可以继承并更改该逻辑。 – azizbekian
@azizbekian嗨,被尝试与重点的ovverride方法,它没有帮助。 试图找到正确的方法 –