2

Ich benutze Android Studio 2.0. Ich habe RecyclerView und CardView verwendet, die ordnungsgemäß auf kitkat render, aber wenn die App auf SAMSUNG A5 mit Android 5.1.1 (Lollipop) ausgeführt wird, scrollt der RecyclerView nicht und mein CardView hat keine Höhe und Ecke.
Ich versuchte Lösungen vorgeschlagen in SO wie
card_view:cardUseCompatPadding="true" hinzufügen und Marge hinzufügen.
geändert Auch
xmlns:card_view="http://schemas.android.com/apk/res-auto"
zu
xmlns:card_view="http://schemas.android.com/tools"
Aber das funktionierte nichtAndroid: Support-Funktionen erscheinen nicht in Android L

Das ist mein RecyclerView:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.RecyclerView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/grid_cards_recyclerview" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:clipToPadding="false" 
    android:layoutDirection="rtl" 
    android:padding="2dp" 
    android:background="#e0e0e0" 

    /> 

RecyclerView GridRecyclerView = (RecyclerView) getActivity().findViewById(R.id.grid_cards_recyclerview); 
     GridLayoutManager gll = new GridLayoutManager(getActivity(), 2); 

     GridRecyclerView.setLayoutManager(gll); 
     GridAdapter gridAdapter = new GridAdapter(getActivity(), mylist); 
     GridRecyclerView.setAdapter(gridAdapter); 

das ist ein seltsames Verhalten: wenn ich meinen Finger nach oben auf Bildschirm (scrollen Sie nach unten), recyclerview zeigt keine Änderung, aber wenn ich zu einer anderen Aktivität gehe und zurückkomme, sehe ich die Recyclerview hat gescrollt !! Wie erklärst du dir dieses Verhalten ?! Recyclerview erkennt Scroll-Bewegungen, zeigt jedoch nicht ihre Reaktion an und aktualisiert ihre Ansicht nicht!

+0

Ich denke, das Problem kann sein, weil die Recyclerview das gesamte Layout abdeckt. Setzen Sie den Recycler View in ein lineares Layout/Relaylayout. Ich denke, die Recyclerview kann mit der Match_Parent-Höhe verwechselt werden. Versuchen Sie es wrap_content zu machen oder geben Sie einen Wert in dp – suku

+0

Ich legte die recyclerView mit height = "wrap_content" in einem linearenLayout mit height = "match_parent" aber nicht wieder arbeiten. – Mneckoee

Antwort

0

I gelöst RecyclerView-Problem. I searched a lot. Ich schreibe meinen Code in einem Fragment und sie für die Vorschau verwendet I

fragmentTransaction.add(R.id.fragment_main, 
       fragment); 

so in Lutscher mein Fragment hinter dem vorherigen Fragment ging und nicht berührt behandeln, so jetzt ich

fragmentTransaction.replace(R.id.fragment_main, 
        fragment); 

Jetzt recyclerView ist scrollen.

Für Schatten habe ich card_view:cardUseCompatPadding="true" verwendet aber nicht funktioniert, weil ich android:hardwareAccelerated in Manifest auf false gesetzt habe. Wenn es wahr wurde, löste sich das Problem.

0

Stellen Sie sicher, Sie verwenden com.android.support:recyclerview-v7:22.2.0

(Mit Version vor 22.2.0 es auch nicht für mich arbeiten)

+0

Ich benutze com.android.support:recyclerview-v7:23.2.1. – Mneckoee