标签: searchview

使用SearchView在搜索操作栏激活时显示软键盘

当我从ActionBar激活搜索时,我看到这个问题集中在SearchView EditText上.但是,当它获得焦点时键盘不会出现.不应该,因为它只是一个普通的EditText?(这是一个普通的EditText吗?)这种行为在Android SDK 11级上可见.(三星Galax Tab 7.7与Android股票.)

我现在有一个解决方法,它挂钩onOptionsItemSelected(MenuItem item)我的Activity 的方法,显示键盘.

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        boolean menuSelectionHandeled = super.onOptionsItemSelected(item);
        // menu_search is the id of the menu item in the ActionBar
        if (item.getItemId() == R.id.menu_search) {
               mInputManager.showSoftInput(null, InputMethodManager.SHOW_IMPLICIT);
        }
        return menuSelectionHandeled;
    }
Run Code Online (Sandbox Code Playgroud)

在哪里mInputManager的实例InputMethodManager.

ActionBar是用ActionBarSherlock构建的,因为目标设备是Android 3.x,这可能是症状的原因吗?根据ActionBarSherlock的常见问题解答:

Android 3.x(也称为Honeycomb)上的操作栏未实现Android 4.x(Ice Cream Sandwich)中的所有功能.为了在所有平台上提供完整的操作栏API以及统一所有Android版本的样式,使用自定义实现.

android actionbarsherlock searchview

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

ActionBar SearchView未在横向模式下完全展开

使用操作栏搜索界面时,窗口小部件将以纵向模式展开以占据屏幕的整个宽度,但在横向模式下会停止缩短.

有没有办法在SearchView上设置扩展布局参数,以便在用户键入搜索时完全填充操作栏?

见图:http: //i.imgur.com/3z8ZbJA.png

注意:我目前没有使用ActionBar Sherlock

编辑:这是我为了扩展全宽而做的.

searchView.setOnSearchClickListener(new OnClickListener() {
    private boolean extended = false;

    @Override
    public void onClick(View v) {
        if (!extended) {
            extended = true;
            LayoutParams lp = v.getLayoutParams();
            lp.width = LayoutParams.MATCH_PARENT;
        }
    }

});
Run Code Online (Sandbox Code Playgroud)

search android android-actionbar searchview

8
推荐指数
2
解决办法
1万
查看次数

在没有ActionBarSherlock的情况下更改SearchView中的光标颜色

我试图在ICS +中的SearchView小部件上更改闪烁光标的颜色.我尝试过以下方法:

  • 添加<item name="android:textCursorDrawable">@null</item>到我的主题
  • 将AutoCompleteTextViews的样式添加到我的主题并将该样式的textCursorAttribute设置为@null
  • android:textCursorDrawable="@null"直接在SearchView上设置

我在这里阅读答案(SearchView中的自定义光标颜色),但是searchAutoCompleteTextView没有非ABS样式,所以无法尝试这个.我还寻找了一个Java方法来设置文本光标drawable,但找不到 - 我正在修改Java中SearchView的其他方面,并且如果有可用的方法,可以使用光标这样做.

我已经非常广泛地定制了SearchView,但最后一个改变是让它看起来不正确 - 光标在白色背景上是白色的,所以它不容易看到.我可以尝试其他任何想法吗?

android searchview

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

[Android搜索小部件]默认情况下如何隐藏搜索视图中的关闭按钮?

我已经实现了机器人SearchViewActionBar.当SearchView获得焦点,关闭按钮[X]在合适的显示出来.我看了一下其他Android原生应用,比如联系人和Gmail.SearchView增益聚焦时不显示关闭按钮.

如何设置我的SearchView表现?

android android-widget searchview

8
推荐指数
5
解决办法
1万
查看次数

使用支持库v21设置SearchView小部件的样式

我正在尝试使用新的AppCompat v21设置SearchView小部件的样式,但我遇到了一些问题.无论我在"suggestionRowLayout"属性上设置什么布局,它都什么都不做.SearchView的建议下拉列表保持不变.

我遇到的其他问题是当"强调颜色"与"原色"颜色相同时,在搜索视图中无法区分插入符号在哪里.您知道如何更改SearchView中的重音颜色仅适用于那里吗?我发现Play Music有同样的问题.

我正在关注Android开发者博客的指南:

http://android-developers.blogspot.com.es/2014/10/appcompat-v21-material-design-for-pre.html

android searchview android-support-library material-design android-5.0-lollipop

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

SearchView是null android

您好我正在尝试实施SearchView,就像我们在Gmail中一样.

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

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


        restoreActionBar();
        return true;
    }

    return super.onCreateOptionsMenu(menu);
}
Run Code Online (Sandbox Code Playgroud)

searchView对象为null

表现:

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.dgp"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="18"
        android:targetSdkVersion="21" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <meta-data
            android:name="android.app.default_searchable"
            android:value=".GameSearchActivity" />

        <activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".GameInfoActivity"
            android:label="@string/title_activity_game_info" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".MainActivity" /> …
Run Code Online (Sandbox Code Playgroud)

android searchview

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

Android - 工具栏中的SearchView无法扩展

我正在尝试在我的工具栏中添加SearchView,我添加了图标,但是当我按下它时,它不会扩展.

这是代码:

main_menu.xml

<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="com.app.try.MainActivity">
    <item
        android:id="@+id/search"
        android:title="@string/search"
        android:icon="@drawable/abc_ic_search_api_mtrl_alpha"
        app:showAsAction="always"
        android:actionViewClass="android.support.v7.widget.SearchView"/>
</menu>
Run Code Online (Sandbox Code Playgroud)

MainActivity.java

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

        MenuItem searchItem = menu.findItem(R.id.search);
        SearchManager searchManager= (SearchManager)getSystemService(Context.SEARCH_SERVICE);

        SearchView searchView=null;
        if (searchItem!=null) {
            Log.d("createOptionMenu","search item not null");
            searchView = (SearchView) searchItem.getActionView();
        }

        if (searchView!=null) {
            Log.d("createOptionMenu","search view not null");
            searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
        }else{
            Log.e("createOptionMenu","search view null");
        }



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

(这总是显示日志消息"search view null")

AndroidManifest.xml中

...
<activity
            android:name=".MainActivity"
            android:configChanges="orientation|keyboardHidden"
            android:label="@string/app_name"
            android:screenOrientation="portrait" >

            <meta-data
                android:name="android.app.searchable"
                android:resource="@xml/searchable" />
        </activity>

        <activity
        android:name=".SearchResultActivity" …
Run Code Online (Sandbox Code Playgroud)

android searchview

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

如何删除Android搜索视图左侧的空间(不属于操作栏)?

我在android应用程序中使用searchview(searchview不是操作栏的一部分).我想删除搜索图标/ searchview左侧的空格.我搜索了很多,并收到了适用于搜索视图的答案,这些视图是操作栏的一部分.

我尝试使用android:layout_gravity,android:gravity,但它们似乎没有用.我想过使用android:contentInsetStart,android:contentInsetLeft,但这些选项不适用于searchview(这不是动作栏的一部分).

[ http://postimg.org/image/xz6pf8yp5/][1]

(由于我的声誉不到10,因此无法在此处直接发布图片)

serchview位于LinearLayout(垂直方向).这是我正在使用的代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context=".MainActivity"
    tools:showIn="@layout/activity_main">

    <SearchView
        android:id="@+id/searchView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="2dp"
        android:layout_gravity="left"
        android:gravity="left"
        />

    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/white" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

layout android padding gravity searchview

8
推荐指数
3
解决办法
7646
查看次数

Searchview未在工具栏中显示

我在支持AppCompat v7 lib 24.0.0上的Searchview实际上存在问题.

SearchView没有显示没有文字和输入文字(看截图)

在此输入图像描述

搜索查询工作完美.

那是我的菜单

<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:title="@string/search"
        android:id="@+id/action_search"
        android:icon="@drawable/ic_search_24dp"
        app:showAsAction="ifRoom|collapseActionView"
        app:actionViewClass="android.support.v7.widget.SearchView"/>
</menu>
Run Code Online (Sandbox Code Playgroud)

在这里我的onCreateOptionsMenu;

menu.clear();
        inflater.inflate(R.menu.menu_search, menu);
        MenuItem searchItem = menu.findItem(R.id.action_search);
        searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String query) {
                //Perform the final search

                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                //Text has changed, apply filtering?

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

我希望有一个人可以帮助我.:)

塞巴斯蒂安

android menu searchview

8
推荐指数
2
解决办法
4099
查看次数

RecyclerView行为 - 键盘打开/关闭时变为空

我实现了一个RecyclerViewSearchViewFilterable; 所有课程来自v7.现在这种行为很烦人.每当键盘启动或关闭时,内容RecyclerView都会变为空白.计数仍然正确,但视图为空.我猜,它与Layout尺寸变化有关.这种行为是正常还是有问题?怎么处理呢?我可以显示代码,但不太清楚哪个部分是相关的,所以告诉我在这里可以添加什么?

android searchview android-filterable android-recyclerview

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