SearchView.setQuery() 在用户点击放大镜菜单项之前

SearchView.setQuery() before user clicked on magnifier menuitem

我的菜单中有一个 SearchView 项目:

<item
    android:id="@+id/search_toolbar_main"
    android:icon="@drawable/ic_search_black_24dp"
    app:showAsAction="always|collapseActionView"
    app:actionViewClass="androidx.appcompat.widget.SearchView"
    android:title="Search" />

现在我想以编程方式打开搜索视图并使用 searchView.setQuery() 设置文本。但是,如果我在用户单击放大镜菜单项之前执行 searchView.setQuery(),则什么也不会发生。

您可以调用 expandActionView() 方法对其进行聚焦

@Override
public boolean onCreateOptionsMenu( Menu menu )
{
    super.onCreateOptionsMenu( menu );

    MenuItem searchMenuItem = menu.findItem( R.id.search_toolbar_main ); 
    searchMenuItem.expandActionView(); // Expand the search menu item in order to show by default the query

    return true;
}