在同一活动中在Android上执行搜索

Kos*_*sky 3 android android-searchmanager

我正在尝试将搜索集成到我的应用中,但我被一个问题阻止了.我的活动是这样声明的,位于TabActivity内.

    <activity
        android:name="FileBrowserActivity"
        android:screenOrientation="portrait"
        android:launchMode="singleInstance">

        <intent-filter>
            <action android:name="android.intent.action.SEARCH" />
        </intent-filter>
        <meta-data android:name="android.app.searchable"
                   android:resource="@xml/searchable"/>
    </activity>
Run Code Online (Sandbox Code Playgroud)

如您所见,其launchMode设置为singleTop.但是当我调用搜索时,输入搜索查询并按下输入此类活动的另一个实例即可启动.没有onNewIntent被调用!但在启动的活动中,每个新搜索都不会启动新活动.

期望的行为是保持当前活动.基本上这就是android启动器搜索的工作原理.

Ely*_*uda 9

您应该使用本文中android:launchMode="singleTop"描述的内容.