nicht gestaffelt Ich entwickle eine Android-App. Ich bin nicht gut in der Android-Entwicklung. In meiner App verwende ich RecyclerView und CardView mit StaggeredGridLayoutManager. Weil ich möchte, dass jede Zellengröße in der Liste unterschiedlich ist und wie in der unteren Abbildung versetzt ist.Zellen sind bei Verwendung von RecyclerView mit StaggeredGridLayoutManager in Android
Aber wenn ich meine app laufen, werden die Zellen nicht versetzt und sie sind einander gleich groß.
Dies ist Screenshot
Diese XML meine Recycler Ansicht
<android.support.v7.widget.RecyclerView
android:id="@+id/df_rv_destination"
android:scrollbars="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
für Zell Artikel
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/di_iv_image"
android:scaleType="centerCrop"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:textSize="17dp"
android:textColor="@color/white"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:id="@+id/di_tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</RelativeLayout>
</android.support.v7.widget.CardView>
mit diesem ist XML Dies ist, wie ich meine RecyclerView konfigurieren StaggerGridLayoutManager
StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(2, 1);
rcDestinations.setLayoutManager(staggeredGridLayoutManager);
rcDestinations.setItemAnimator(new DefaultItemAnimator());
regionsList = new ArrayList<Region>();
destinationsAdapter = new DestinationsAdapter(getActivity(),regionsList);
rcDestinations.setAdapter(destinationsAdapter);
Warum ist mein RecyclerView nicht gestaffelt? Wie kann ich es reparieren?
Wenn ich Image scaleType in die Mitte stellen, wird die Bildbreite nicht mit der Zellenbreite übereinstimmen. Die Ausrichtung wird nicht korrekt sein. Vor allem mit Texten. –
Ja, das stimmt, aber Sie müssen mindestens die Höhe des Bildes skalieren, bevor Sie es zum imageView hinzufügen. Können Sie mir den Teil des Codes zeigen, in dem Sie die Bilder hinzufügen? – 666
Nichts besonderes. Ich stelle das Bild einfach direkt mit Picasso ein. Keine Änderung. –