Ich entwickle eine Android App. In meiner App verwende ich CollapsingtoolbarLayout zusammen mit RecyclerView. Beide arbeiten. Aber ich habe ein Problem mit der Positionierung von ihnen. Was ich will ist, ich möchte RecyclerView direkt unter Collapsing Toobar und ich möchte RecyclerView zusammen mit Toolbar gehen, wenn es zusammengebrochen ist. Aber mein Code funktioniert nicht wie erwartet.Wie wird RecyclerView unterhalb von CollapsingToolbarLayout platziert und reagiert auf die Symbolleiste, wenn sie in Android minimiert ist?
Das passiert jetzt.
Wie Sie Recycler Ansicht sehen kann, ist feste Position mit Werkzeugleiste abgedeckt ist. Es reagiert nicht auf minimierte Symbolleiste.
Das ist mein XML-Layout:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:fitsSystemWindows="true"
tools:context=".MainActivity">
<android.support.v7.widget.RecyclerView
android:id="@+id/dc_rv_destination"
android:scrollbars="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<android.support.design.widget.AppBarLayout
android:id="@+id/htab_appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/htab_collapse_toolbar"
android:layout_width="match_parent"
android:layout_height="@dimen/main_activity_parallax_initial_height"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/htab_header"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/apple"
android:fitsSystemWindows="true"
android:scaleType="centerCrop"
app:layout_collapseMode="parallax" />
<TextView
android:layout_centerInParent="true"
android:text="HELLO"
android:textSize="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</RelativeLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="@dimen/main_activity_toolbar_height"
android:gravity="top"
android:minHeight="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:titleMarginTop="13dp" />
<!-- <android.support.design.widget.TabLayout
android:id="@+id/htab_tabs"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom"
app:tabIndicatorColor="@android:color/white" />-->
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
In Tätigkeit habe ich nichts konfiguriert mit Ausnahme RecyclerView Initialisierung und Daten darauf einstellen. Diese
ist, wie ich RecyclerView in Tätigkeit gesetzt
private void setDestinationRecyclerView()
{
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getBaseContext());
rcDestinations.setLayoutManager(mLayoutManager);
rcDestinations.setItemAnimator(new DefaultItemAnimator());
regionsList = new ArrayList<Region>();
destinationsAdapter = new DestinationsAdapter(regionsList,getBaseContext());
rcDestinations.setAdapter(destinationsAdapter);
//add items and notify data changed
}
Also, wie kann ich RecyclerView Reaktion auf CollapsingToolbarLayout machen, wenn es zusammengeklappt ist?