5

Ich habe eine RecyclerView mit SearchView und Filterable implementiert; alle Klassen von v7. Jetzt gibt es dieses Verhalten, das nervt. Wenn die Tastatur hochgefahren oder geschlossen wird, wird der Inhalt der RecyclerView leer. Die Zählung ist immer noch korrekt, aber die Ansicht ist leer. Meine Vermutung, es hat etwas mit der Größenänderung Layout zu tun. Ist dieses Verhalten normal oder stimmt etwas nicht? Wie man damit umgeht? Ich kann den Code zeigen, weiß aber nicht, welcher Teil relevant sein wird, also sag mir, was ich hier hinzufügen kann?RecyclerView-Verhalten - Geht leer, wenn Tastatur geöffnet/geschlossen wird

Antwort

7

Während der Eingabe der Frage, gefunden this aus den ähnlichen Fragen.

Fügen Sie Ihrer Aktivität im Manifest die folgende Zeile hinzu. Hoffe, es funktioniert. Android: windowSoftInputMode = "adjustPan"

Genauer gesagt, fügen android:windowSoftInputMode="adjustPan" im activity Tag in AndroidMenifest.xml, wo die Tastatur geöffnet werden soll.

Beispiel:

<activity 
     android:name=".FManagerActivity" 
     android:label="@string/app_name" 
     android:windowSoftInputMode="adjustPan" 
     android:theme="@style/AppTheme.Light.NoActionBar"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN"/> 
     <category android:name="android.intent.category.LAUNCHER"/> 
    </intent-filter> 
</activity> 

Es ist grundsätzlich das Verhalten in dem die Aktivität reagiert, wenn die Tastatur geöffnet oder geschlossen wird. adjustPan weist die Tastatur an, die Ansicht der Aktivität zu überlagern, ohne den Inhalt zu stören. Wenn die Tastatur geöffnet wird, ändert sich auch die Größe der Aktivität, wodurch der Inhalt verschwindet, da notifyDatasetChanged() während und nach den impliziten Aktionen nicht aufgerufen wird.

Verwandte Themen