在Android中显示搜索栏

时间:2010-12-01 10:22:40

标签: android uisearchbar

我在尝试在应用顶部显示搜索栏时遇到了问题。即使应用程序启动,我也希望这个栏可以在洞应用程序中显示(在所有活动中),而不需要用户按下按钮,我正在尝试使用android的可搜索功能。这是我到目前为止所得到的:

的manifest.xml

<application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".Main"
              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=".BigImageView">
        <intent-filter>
            <action android:name="android.intent.action.SEARCH" />
        </intent-filter>
        <meta-data android:name="android.app.searchable"
               android:resource="@xml/searchable"/>
    </activity>
    <!-- declare the default searchable Activity for the whole app -->
    <meta-data android:name="android.app.default_searchable"
           android:value=".BigImageView" />

</application>

RES / XML / searchable.xml

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="@string/app_name"
android:hint="@string/search_hint" >

我可以完成此操作,还是用户需要按下按钮才能调用搜索栏?

1 个答案:

答案 0 :(得分:2)

你可以把

onSearchRequested();
<{1>}中的

- 但如果另一个组件获得焦点,搜索栏会隐藏。

如果这不是你想要的,你应该实现自己的搜索栏(即使用AutoCompleteTextView)。