Android搜索活动和android:launchMode =“singleTop”

时间:2013-10-12 18:45:41

标签: android searchview android-searchmanager android-search

我的应用中有一个使用SearchView进行搜索的活动(请参阅清单 - 拦截搜索意图)。 但是,当我按搜索时,没有任何反应。活动永远不会重新开始。所以,我删除了android:launchMode =" singleTop"从我的活动开始,然后它开始重新启动并且#34;工作。"但是,对我来说最好有singleTop,以便活动只有一个实例。当我有singleTop时,为什么这不起作用?

<activity
        android:name="com.brianco.andypedia.MainActivity"
        android:label="@string/app_name"
        android:launchMode="singleTop" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.SEARCH" />
        </intent-filter>
        <meta-data android:name="android.app.searchable" android:resource="@xml/searchable" />
    </activity>

    <meta-data android:name="android.app.default_searchable"
        android:value=".MainActivity" />

2 个答案:

答案 0 :(得分:1)

我不知道这是否能回答您的问题,但是this page显示了一个简单的搜索结果示例ActionBar Compat(这是与旧Android版本兼容的新Google图书馆)

答案 1 :(得分:0)

onCreate以外,您需要在onNewIntent处理搜索意图。