Android - 搜索 View : Query Hint visible

标签 android searchview

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

    <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); 但它默认激活搜索 View 。

谢谢

最佳答案

这是我的解决方案。这是一种解决方法,但到目前为止对我有用。

// 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;
                   }
               }
           }
    });

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

关于Android - 搜索 View : Query Hint visible,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33221386/

相关文章:

java - (底页)是否可以在不修改实际应用程序布局的情况下更新屏幕的层次结构?

android - 如何使用 Android 版 Facebook 同步的联系人图片

android - 获取空 SearchView

android - 谷歌搜索类似 SearchView

android - 使用 SearchView 时未显示定义的菜单图标

android - 在 Android SurfaceView 上实现捏合和缩放

Android Studio 错误运行 'app' : Default Activity not found

android - 将 zip() 与可能不会发出值的 Maybe 一起使用

android - 如何删除 Android 搜索 View 左侧的空间(不属于操作栏的一部分)?

java - 如何将搜索 View 移动到屏幕左侧?