标签: searchview

Android searchview 删除提示填充

我正在我的应用程序中工作,工具栏中有一个搜索视图,但提示在光标后面有一个小填充。

如何去除填充物?

这是我的搜索视图:

搜索视图

我想要这样:

没有填充的搜索视图

这是我的 onCreateOptionsMenu:

SearchManager searchManager=(SearchManager)getSystemService(Context.SEARCH_SERVICE);
    MenuItem item=menu.findItem(R.id.procura);
    Drawable drawable = menu.findItem(R.id.procura).getIcon();
    if (drawable != null) {
        drawable.mutate();
        drawable.setColorFilter(Color.BLACK, PorterDuff.Mode.SRC_ATOP);
    }

    searchView=(SearchView) MenuItemCompat.getActionView(item);
    searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
    searchView.setQueryHint(getResources().getString(R.string.app_hint));

    try {
        Field mDrawable = SearchView.class.getDeclaredField("mSearchHintIcon");
        mDrawable.setAccessible(true);
        Drawable drw = (Drawable) mDrawable.get(searchView);
        drw.setBounds(0, 0, 0, 0);
    } catch (Exception e) {
        e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

我的风格:

<style name="SearchViewMy" parent="Widget.AppCompat.Light.SearchView">
    <item name="submitBackground">@color/colorPrimary</item>
    <item name="queryBackground">@color/colorPrimary</item>
    <item name="android:colorFocusedHighlight">@color/colorAccent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我的菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
<item
    android:id="@+id/procura"
    android:title="@string/app_hint"
    android:icon="@mipmap/ic_search_black_24dp"
    app:showAsAction="ifRoom|collapseActionView"
    app:actionViewClass="android.support.v7.widget.SearchView"/>
Run Code Online (Sandbox Code Playgroud)

java android searchview

1
推荐指数
1
解决办法
2812
查看次数

如何在 Android 5.0+ 上设置 SearchView 的样式?

我正在为 Android 5.0+ 创建应用程序,所以我正在使用 API 21+。

使用 android.support.v7.widget.SearchView 与 SearchView 有什么好处?

我可以使用 SearchView 还是必须使用 android.support.v7.widget.SearchView?

如何以这种方式设置 SearchView 的样式。我还需要在其他活动中重用这种风格。

在此处输入图片说明

我目前的风格:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimaryDark">@color/color_primary</item>
    <item name="colorAccent">@color/color_accent</item>
    <item name="android:textColor">@color/white</item>
</style>
Run Code Online (Sandbox Code Playgroud)

android styles styling searchview material-design

1
推荐指数
1
解决办法
1921
查看次数

Android searchView 明文按钮监听器

如何将侦听器设置为 searchView 中的“明文”按钮(不关闭)。不,onQueryTextChange设置为空并不能解决我的问题。

你好

android kotlin searchview

1
推荐指数
1
解决办法
1195
查看次数

按"查找"按钮后如何关闭/图标化SearchView?

我正在使用SearchView,如教程创建搜索界面中所述.
我使用选项android:launchMode ="singleTop"在当前活动中执行搜索.
按下"查找"按钮键盘关闭但SearchView保持打开状态.
执行搜索后是否可以对SearchView进行图标化?

search android searchview

0
推荐指数
1
解决办法
2971
查看次数

没有针对searchView Android应用的提交按钮

我在我的Android应用程序中使用searchview,我想添加一个用户按下以开始搜索的按钮.根据我在Internet上阅读的内容,我可以使用setSubmitButtonEnabled调用提交按钮而不是在布局文件中放置按钮.这是我的代码:

public void setSubmitButtonEnabled (boolean enabled) {

}
Run Code Online (Sandbox Code Playgroud)

我将setSubmitButtonEnabled放在菜单inflater中,如下所示:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.mylist, menu);

    SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView();
    searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
    searchView.setIconifiedByDefault(false);

    setSubmitButtonEnabled(true);

    return true;
}
Run Code Online (Sandbox Code Playgroud)

显然我做得不对,因为当我启动我的应用程序时,我在屏幕上看不到任何提交按钮.我的代码中缺少什么或出了什么问题?提交按钮应该出现在键盘上还是屏幕上?谢谢.

android button searchview

0
推荐指数
1
解决办法
2358
查看次数

在ActionBar中自动打开SearchView

我有这个代码:

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);

        MenuItem searchItem = menu.findItem(R.id.action_search);
        SearchView searchView = (SearchView) MenuItemCompat
                .getActionView(searchItem);
        searchView.setQueryHint("Search");
        searchView.setOnQueryTextListener(this);
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

它有SearchView.要打开SearchView,应单击循环图标.如何让它在开始时自动打开?

android android-actionbar searchview

0
推荐指数
1
解决办法
476
查看次数

android searchview无法用大写字母过滤

我有searchview它工作正常,当我输入英文单词的小写字母.但是,当我使用大写单词过滤列表时,它不起作用,当我键入时,请帮助我解决我的问题.谢谢我的进步

这是我的searchView代码

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    // Inflate menu to add items to action bar if it is present.
    inflater.inflate(R.menu.menu_main, menu);
    // Associate searchable configuration with the SearchView
    SearchManager searchManager =
            (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    searchView =
            (android.support.v7.widget.SearchView) menu.findItem(R.id.menu_search).getActionView();
    searchView.setSearchableInfo(
            searchManager.getSearchableInfo(getComponentName()));

    searchView.setOnQueryTextListener(new android.support.v7.widget.SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            Log.i("search", "search is working  "+newText);
            listDataAdapter.getFilter().filter(newText);
            return false;
        }
    });

    return true;
}
Run Code Online (Sandbox Code Playgroud)

这是适配器代码

 public abstract class …
Run Code Online (Sandbox Code Playgroud)

android filter adapter searchview

0
推荐指数
1
解决办法
1622
查看次数

SearchView 在文本更改侦听器或文本提交中未显示任何结果

我正在尝试实现 aSearchViewOptionsMenu的 a Fragment。该onQueryTextChangeonQueryTextSubmit不工作。我不确定我哪里出错了。

菜单文件:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/profile"
        android:orderInCategory="10"
        android:title="Profile"
        app:showAsAction="never">
    </item>
    <item
        android:id="@+id/settings"
        android:orderInCategory="11"
        android:title="Settings"
        app:showAsAction="never">
    </item>
    <item
        android:id="@+id/action_search"
        android:icon="@android:drawable/ic_menu_search"
        app:showAsAction="always|collapseActionView"
        app:actionViewClass="android.support.v7.widget.SearchView"
        android:title="Search"/>
</menu>
Run Code Online (Sandbox Code Playgroud)

我试图从 SearchView 访问文本的片段部分:

@Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
        inflater.inflate(R.menu.browse_story_fragment, menu);

        MenuItem myActionMenuItem = menu.findItem(R.id.action_search);
        searchView = (SearchView) myActionMenuItem.getActionView();

        SearchView.OnQueryTextListener listener = new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextChange(String query) {
                query = query.toLowerCase();

                Log.e("queryText",query);

                return false;

            }
            public …
Run Code Online (Sandbox Code Playgroud)

java android android-optionsmenu searchview

0
推荐指数
1
解决办法
5582
查看次数

如何在android中实现Searchview?

我添加了一些代码,就像在OnCreate菜单选项

 SearchManager searchManager =
           (SearchManager) getSystemService(Context.SEARCH_SERVICE);
    SearchView searchView =
            (SearchView) menu.findItem(R.id.search).getActionView();
    searchView.setSearchableInfo(
            searchManager.getSearchableInfo(getComponentName()));
Run Code Online (Sandbox Code Playgroud)

另外我在 xml 目录中创建了一个 xml 文件,我做了这个。但我不知道如何传递搜索查询并获得结果。执行这个获取操作栏消失了。

android searchview

0
推荐指数
1
解决办法
1948
查看次数

在ActionBar中带有圆角的SearchView

我正在开发一个需要在搜索片段中使用SearchView的应用程序。

我显然知道如何创建经典SearchView,但是如何对其进行自定义以获得这样的结果是可能的:

在此处输入图片说明

xml android android-actionbar searchview android-actionbar-compat

0
推荐指数
1
解决办法
1547
查看次数