Android SearchView funktioniert nicht

8

Ich habe versucht, alle Bibliotheken zu aktualisieren, aber ich habe immer noch Fehler. Ich kann die App auf dem Simulator ausführen, aber wenn ich das APK exportiere und es auf einem echten Android-Gerät laufe, funktioniert die App nicht.

MinSdkVersion ist 8, targetSdkVersion ist 19. Bitte helfen Sie !!!

menu.xml

%Vor%

SearchView

%Vor%

manifest

%Vor%

suchbare.xml

%Vor%

Fehler

%Vor%     
We Rub Chan 04.09.2014, 08:33
quelle

7 Antworten

0

Für API vor 11 sollten Sie Action Bar Items im Kompatibilitätsmodus initialisieren:

%Vor%

Aktualisierung:
Also habe ich versucht, es in API 8 Emulator und auf 4.4 KitKat zu reproduzieren. Leider wurde mein 2.3.8 Gerät vor einiger Zeit gemauert und konnte daher keine Hardware mit niedriger API einchecken. Was ich dir vorschlagen kann:
1. Überprüfen Sie, ob SearchView von android.support.v7.widget.SearchView;
importiert wird 2. Überprüfen Sie, ob die Menüressource korrekt ist:

%Vor%

3. true von onCreateOptionsMenu zurückgeben, wenn keine Verarbeitung stattfindet (Aktivitätsklasse ist nicht unterklassifiziert)

UPDATE2: GOT IT! Sie erstrecken sich wahrscheinlich von Activity class. Sollte ActioBarActivity sein:

%Vor%     
Alexander Zhak 04.09.2014, 15:56
quelle
29

Fügen Sie folgenden Code zu proguard-rules.pro

hinzu %Vor%     
Bao Le 01.10.2015 05:00
quelle
14

Hast du Proguard in deinem Build aktiviert? Wenn dies der Fall ist, sollten Sie sicherstellen, dass sich die appcompat-Bibliotheken in der Proguard-Ausschlussliste (in proguard.cfg) befinden. Ein Brute-Force-Ansatz besteht darin, alle Support-Bibliotheksklassen mit folgenden Elementen zu erhalten:

%Vor%

In meinem Fall hatte ich eine Klasse, die das SearchView der Support-Bibliothek erweitert hat, also fügte ich das zu meiner proguard.cfg hinzu:

%Vor%

Die Konstruktoren werden speziell erwähnt, um den Fehler zu vermeiden:

%Vor%     
RobD 22.09.2014 08:46
quelle
7

Nach langen Stunden der Forschung eine einfache Lösung dieses Problems, d. h. einfach hinzufügen

%Vor%

in der App / proguard / android.proguard-Datei von AndroidStudio.

Prost!

    
Manu 15.10.2015 06:49
quelle
5

Ich (auch) habe

%Vor%

beim Start meines Release-Builds (mit proguard / minify aktiviert).

Das Hinzufügen zu den Progardregeln hat es behoben:

%Vor%

Damit bleibt das SearchView-Widget erhalten, aber proguard kann weiterhin alle anderen nicht verwendeten Support-Bibliotheksklassen wegwerfen, so dass Ihre Version sauber und ordentlich bleibt.

    
Ciske Boekelo 04.08.2015 16:45
quelle
5

Erforderliches Minimum für proguard-rules.pro

%Vor%     
quelle
1

Ich musste das hinzufügen und jetzt funktioniert es glatt:

%Vor%     
Sid 22.02.2016 16:40
quelle