如何在方向更改后停止 searchView 自动获取焦点

How to stop searchView to getting focus automatically after orientation change

我在工具栏中将 searchItem 扩展为 menuItem,只要方向发生变化,我的问题就会出现,如果我的 searchView 处于展开模式,那么它会自动获得焦点,即使在方向焦点进入另一个视图之前也是如此。

如何防止 searchView 自动获得焦点?

方向改变前:

方向改变后:

Android 将尝试在您的视图层次结构中找到第一个 focus-able 视图并关注它。为避免这种情况,您可以添加一个虚拟视图(例如,使用高度和宽度为 0 的 LinearLayout)来窃取第一个焦点。

<LinearLayout
android:focusable="true" 
android:focusableInTouchMode="true"
android:layout_width="0px" 
android:layout_height="0px"/>

在你的 recyclerView 上方创建一个虚拟视图,然后在自动旋转后,第一个焦点将被该视图获取,因此搜索视图不会获取焦点,像这样尝试