Tôi có một ứng dụng Android có một vài hoạt động khác nhau để duyệt các bài viết và hình ảnh được tải xuống từ RSS.Hai hoạt động searchable.xml trong một AndroidManifest.xml
Tôi muốn có thể đề nghị kết nối số search button to the Search dialog bằng tệp searchable.xml
. Tôi đã cố gắng làm điều này với một tìm kiếm, sử dụng:
<activity android:name=".search.SearchResultsActivity"
android:label="@string/search_results_activity_title" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
</intent-filter>
<meta-data android:name="android.app.searchable"
android:resource="@xml/searchable_articles"/>
</activity>
và trong <application />
<meta-data android:name="android.app.default_searchable"
android:value=".search.SearchResultsActivity" />
bây giờ tôi có thể khởi chạy hộp thoại tìm kiếm từ bất kỳ hoạt động, và nó sẽ khởi động SearchResultsActivity
.
Tôi muốn có thể tìm kiếm hình ảnh khi người dùng là ImageListActivity
, sử dụng searchable_images.xml
và sử dụng mặc định ở mọi nơi khác.
Tôi có một SearchResultsImageActivity
bao gồm phần tử siêu dữ liệu sau và sử dụng cùng một phần tử trong ImageListActivity
.
<meta-data android:name="android.app.searchable"
android:resource="@xml/searchable_images"/>
On nhấn nút tìm kiếm trong ImageListActivity
, tôi nhận được tìm kiếm mặc định từ searchable_articles.xml
.
Nếu tôi thay đổi default_searchable
thành SearchResultsImageActivity
, tìm kiếm hình ảnh luôn được khởi chạy và tìm kiếm bài viết sẽ không bao giờ được khởi chạy.
Nếu tôi xóa hoàn toàn phần tử siêu dữ liệu default_searchable
và thêm searchable
các hoạt động chỉ chọn dữ liệu meta, không có tìm kiếm nào được khởi chạy.
Tôi khá chắc chắn điều này nên có thể, nhưng tôi không biết mình đang làm gì sai.
Bạn đã xác định điều này? – Dan
Tôi không nghĩ rằng bạn có thể làm điều đó bằng cách sử dụng xml vì tài nguyên là một trong một với một Intent. Bạn có thể chuyển tài nguyên trong mã của bạn. – JPM