安卓 - 搜索视图:查询提示可见

4

有没有办法让搜索视图的查询提示始终可见?我的意思是,即使未选择搜索视图,用户也可以看到它的用途。

    <SearchView
    android:id="@+id/search"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="7"
    android:queryHint="@string/searchHint" />

我尝试了 searchView.setIconifiedByDefault(false);,但它默认激活了搜索视图。
谢谢。
2个回答

4
这是我的解决方案。虽然有一些变通,但目前对我来说是可行的。
// Boolean to determine if the activity has just been launched

    private boolean activityStartup = true;

// Inside onCreate

    searchView.setIconifiedByDefault(false);
    searchView.setOnQueryTextFocusChangeListener(new View.OnFocusChangeListener() {
           @Override
           public void onFocusChange(View v, boolean hasFocus) {
               if (hasFocus) {
                   if (activityStartup) {
                       searchView.clearFocus();
                       activityStartup = false;
                   }
               }
           }
    });

因此,查询提示始终显示,并且仅在活动首次启动时,SearchView焦点会自动清除以隐藏键盘。当手动点击/聚焦SearchView时,键盘将显示。

3
你尝试使用searchView.setQueryHint("查询提示")吗?这个方法会显示查询提示。

2
是的,它会显示提示,但仅当用户单击searchView时才会显示。我希望无论用户是否“选择”searchView,都能始终显示提示... - Ynnad
尝试将 queryHint 属性添加到 XML 中。 - Sameer Khan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接