如何在不点击的情况下打开android搜索?

How to open android search without click?

我希望在不单击搜索图标的情况下打开工具栏中的 android 搜索视图。这是 XML 代码

<item
    android:id="@+id/action_search"
    android:title="@string/search_title"
    app:actionViewClass="android.support.v7.widget.SearchView"
    app:showAsAction="always"/>

和Java MainActivity 中的代码。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);

    MenuItem menuItem = menu.findItem(R.id.action_search);
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(menuItem);
    searchView.setQueryHint("Type something...");
    int searchPlateId = searchView.getContext()
            .getResources()
            .getIdentifier("android:id/search_plate", null, null);
    View searchPlate = searchView.findViewById(searchPlateId);
    if (searchPlate != null) {
        searchPlate.setBackgroundColor(Color.DKGRAY);
        int searchTextId = searchPlate.getContext()
                .getResources()
                .getIdentifier("android:id/search_src_text", null, null);
        TextView searchText = (TextView) searchPlate.findViewById(searchTextId);
        if (searchText != null) {
            searchText.setTextColor(Color.WHITE);
            searchText.setHintTextColor(Color.WHITE);
        }
    }
    return true;
}

这有效,下面的输出屏幕...

因此,在我单击“搜索”图标后,它会输出下面的屏幕...

我要的是直接副屏!

尝试在初始化 SearchView 后将此行添加到您的代码中:

searchView.setFocusable(true);

更新:

searchView.setIconified(false) worked