Ich arbeite an einer einfachen App, die Daten mit öffentlichen Daten (JSON) erhält und sie in einer Listenansicht anzeigen. Und es funktioniert in Ordnung. Jetzt möchte ich 'Suchansicht' in der Aktionsleiste implementieren. So folgte ich youtube Tutorial (https://www.youtube.com/watch?v=hoEY2n8CCSk) und tat genau das, was er tat. Obwohl die Suchansicht wie gewünscht angezeigt wurde, funktioniert die Suchfunktion überhaupt nicht. Ich denke, das Youtube-Tutorial gefiltert nur Zeichenfolge, aber ich muss das Objekt in der Listenansicht nach Name Variable jedes Objekts filtern. Using getName() -Methode. Was soll ich machen??searchview oncreateoptions Methode funktioniert nicht mit Objekt von JSON (Android)
MainActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_search, menu);
MenuItem item = menu.findItem(R.id.menuSearch);
SearchView searchView = (SearchView) item.getActionView();
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
mAdapter.getFilter().filter(newText);
return false;
}
});
return super.onCreateOptionsMenu(menu);
}
AndroidMenifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/myAppTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
menu_search.xml
<item android:id="@+id/menuSearch"
android:title="Search"
android:icon="@android:drawable/ic_menu_search"
app:actionViewClass="android.widget.SearchView"
app:showAsAction="always">
</item>
Tut immer noch nichts .. :(Übrigens, sollte ich onOptionItemSelected dafür verwenden? – JessJ
ja .. hast du meinen Code ausprobiert? weil es in meinem Fall funktioniert. Ich habe eine Kuppel gemacht. –
Ja, ich versuchte .. und wenn ich auf Suchleiste tippe..nichts passiert .. – JessJ