Tôi có chức năng tìm kiếm trong dự án của mình. Trong searchable.xml, tôi muốn giới hạn tìm kiếm chỉ khi người dùng gõ ít nhất 3 ký tự.Android: saerchable.xml và tham số searchSuggestThreshold
Điều này có thể được thực hiện với android: searchSuggestThreshold = "3" nhưng trong trường hợp của tôi, không có gì xảy ra, người dùng vẫn có thể thực hiện tìm kiếm khi anh ấy nhập hoặc nhiều ký tự.
Đây là searchable.xml tôi:
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="@string/Label"
android:hint="@string/Hint"
android:searchSuggestThreshold="3"
android:includeInGlobalSearch="true"/>
Đây là 2 activityes tìm kiếm từ Manifest
<activity android:name=".Search"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
</intent-filter>
<meta-data android:name="android.app.searchable"
android:resource="@xml/searchable"/>
</activity>
<activity android:name=".SearchInterface"
android:configChanges="orientation|keyboardHidden">
<meta-data android:name="android.app.default_searchable"
android:value=".Search" />
</activity>
Xin chào @rallat, cảm ơn bạn đã trả lời. Tôi đã thử giải pháp đầu tiên và không có gì thay đổi. Nếu bạn xem qua bài viết này: http://developer.android.com/guide/topics/search/search-dialog.html siêu dữ liệu nằm trong thẻ hoạt động chứ không phải trong thẻ ứng dụng. –
cho giải pháp thứ hai, tôi nghĩ rằng điều này là không thực sự có thể bởi vì khi người dùng gõ nút tìm kiếm, hoạt động tìm kiếm bị đóng và một hoạt động mới được mở ra nơi tôi đang làm tất cả các querry và hiển thị kết quả. Vì vậy, tôi cần phải kiểm tra chiều dài đầu vào khi người dùng nhấp vào nút tìm kiếm –
ghi siêu dữ liệu giữa các thẻ ứng dụng có nghĩa là hoạt động có thể tìm kiếm có thể gọi tìm kiếm từ toàn bộ ứng dụng. http://developer.android.com/resources/samples/SearchableDictionary/index.html – rallat