Прежде всего извините, если я новичок в Android и Java и все еще хочу реализовать что-то для своей диссертации относительно приложения, которое я создаю, я просто хочу, чтобы на панели действий было представление поиска для определенного действия для поиска соответствующих букв или слова в поиске моего пользовательского списка... и я не знаю, что добавить в "doMySearch (строковый запрос)", чтобы получить результаты.
SearchResultsActivity.java
import android.app.ActionBar;
import android.app.ListActivity;
import android.app.SearchManager;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
public class SearchResultsActivity extends ListActivity {
private TextView txtQuery;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search_results);
// get the action bar
ActionBar actionBar = getActionBar();
// Enabling Back navigation on Action Bar icon
actionBar.setDisplayHomeAsUpEnabled(true);
txtQuery = (TextView) findViewById(R.id.txtQuery);
handleIntent(getIntent());
}
@Override
protected void onNewIntent(Intent intent) {
setIntent(intent);
handleIntent(intent);
}
/**
* Handling intent data
*/
private void handleIntent(Intent intent) {
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
String query = intent.getStringExtra(SearchManager.QUERY);
doMySearch(query);
txtQuery.setText("Search Query: " + query);
}
}
private void doMySearch(String query) {
// TODO Auto-generated method stub
ArrayAdapter<String> adapter =new ArrayAdapter<String>(this, R.layout.subject_list_layout, R.id.subject_course_title_row);
return adapter;
}
}
Searchable.xml
<?xml version="1.0" encoding="utf-8"?>
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:hint="@string/search_hint"
android:label="@string/app_name" />
Манифест.xml
<!-- Sample Search -->
<activity
android:name="com.randomlyroaming.com.loaopencourseware.courses.BSIT"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden" >
<meta-data
android:name="android.app.default_searchable"
android:value=".SearchResultsActivity" />
</activity>
<!-- Search results activity -->
<activity
android:name=".SearchResultsActivity"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
Пожалуйста, помогите... Он уже перенаправляет на "txtQuery.setText("Поисковый запрос: " + query);" но никаких результатов... Нужно ли мне что-то поставить метод "doMySearch(query);" какой код я могу вставить туда, чтобы он работал?..
Спасибо, и Ваша помощь очень ценится ...
doMySearch()
не содержит кода. Ничего не случится. Показывает лиTextView
то, что вы ввели в поле поиска? Кроме того, что делаетsetIntent()
? можешь показать этот метод - person Luis Lavieri   schedule 19.04.2014ListView
? Вы хотите изменить адаптер во время поиска слова? - person Luis Lavieri   schedule 19.04.2014