Tôi đang sử dụng giao diện Tìm kiếm trong andriod và theo hướng dẫn android tôi đã thiết lập giao diện.searchView setQuery không hoạt động
Tôi tạo SearchableActivity để xử lý cả người dùng nhập kết quả tìm kiếm.
Bây giờ tôi gặp một vấn đề trong đó khi người dùng nhập nội dung vào số SearchView
và nhấn phím tìm kiếm, requset Tìm kiếm sẽ được gửi, sau đó tôi sẽ nhận chuỗi truy vấn và thực hiện tìm kiếm, nhưng tại thời điểm này, văn bản trong SearchView
đã được thay đổi thành giá trị mặc định SearchHit
trong khi tôi muốn nó là chuỗi truy vấn.
Vì vậy, tôi đã cố gắng sử dụng searchView.setQuery(query, false);
, nhưng nó không hoạt động, vấn đề là gì?
Các mã Hoạt động cốt lõi:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.map_activity_layout);
Log.d("map", "create");
handleIntent(getIntent());
}
public void onNewIntent(Intent intent) {
setIntent(intent);
handleIntent(intent);
}
private void handleIntent(Intent intent) {
Log.d("map", "handleIntent");
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
String query = intent.getStringExtra(SearchManager.QUERY);
//try search
Log.d("map", "search and set query:" + query);
searchView.setQuery(query, false); // reset the value in of the SearchView
}
}
Các AndroidManifest.xml:
<activity
android:name=".ui.MapActivity"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<action android:name="android.intent.action.SEARCH" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
bạn có giải quyết được sự cố không. ngay cả khi tôi cũng tấn công vào cùng một điểm. –