我正在使用MaterialSearchView(https://github.com/MiguelCatalan/MaterialSearchView),这是一个在Material Design设计方法中实现SearchView的库。

它将searchview放在工具栏中。但是,不知道如何专注于搜索,因此当活动开始时,搜索会立即获得焦点,并显示虚拟键盘。它仅在我单击搜索图标时才聚焦。

MaterialSearchView searchView;
        searchView = MaterialSearchView)getActivity().findViewById(R.id.search_view);
searchView.requestFocus();


不起作用。

我从片段和活动中进行了尝试。

谢谢

最佳答案

我建议您使用my implementation of MaterialSearchView,无需单击工具栏/操作栏就可以打开它。

例如,在您的Activity中,您可以执行以下操作:

// Activity:
MaterialSearchView searchView = (MaterialSearchView) findViewById(R.id.search_view);


然后,可以在代码中的任何位置调用以下命令来打开视图:

searchView.openSearch();


并通过调用关闭它:

searchView.closeSearch();


因此,您可以将openSearch()放在您的onResume()中。这样,Activity启动时,您将始终打开搜索视图。您也可以从Button上的任何Activity调用该方法。

附注:它还支持搜索建议和搜索历史。

奖励:有一个gif(以葡萄牙语显示,但它也支持英语,所以不用担心)。

android - MaterialSearchView不专注于启动-Android-LMLPHP

有关如何设置它以及查看用例的更多信息,您可以check the docs

10-05 23:56