2012-02-12 90 views
2

我試圖創建簡單的搜索應用程序,並遵循Android的網站.. 但沒有運氣的文檔...如何在android中調用搜索框?

這些都是在創建搜索對話框要求:

  1. 搜索配置文件在res/xml文件夾中。
  2. 清單中聲明的​​可搜索活動。
  3. 另一個使用可搜索活動執行搜索內容的活動。

搜索框可以通過調用

@Override 
    public boolean onSearchRequested() { 
     // TODO Auto-generated method stub 
     return super.onSearchRequested(); 
    }   

也可以使用調用...

this.onSearchRequested(); 
    return true; 

的按鈕

他們沒有工作...... 我用硬件和軟件調用,但沒有搜索對話框出現... 請幫助....

+0

我也有類似的問題,文件不是很清楚這一個。 – 2015-04-19 08:36:55

回答

0

您是否在清單中爲您搜索元數據元素搜索配置文件?如果沒有,你可以添加以下:

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

在你的搜索活動,其中@ XML /搜索指向您的配置文件(在這個例子中searchable.xml)。

+0

是的,但沒有工作。我所做的是將元數據放置在活動標籤(所有類)的下面,它工作(我可以重新搜索),但缺點是,如果用戶不小心碰到搜索硬件按鈕,最有可能彈出的搜索框。我不知道爲什麼它不在特定的課堂上工作 – scamexdotexe 2012-02-14 06:50:27

0

最好在應用程序標記中包含元數據標記,而不是在每個活動標記中聲明該標記。即使你不想在某些活動中使用搜索功能,也不用擔心。只需重寫onSearchRequested()方法並返回false。