Ich versuche, RelativeLayout zu erstellen, die CoordinatorLayout und LinearLayout im unteren Bereich hat und einige seltsame Verhalten gefunden, die ich nicht lösen kann. Das ist mein LayoutRecycleview in coordinatorlayout
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.CoordinatorLayout
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/sender"
android:background="@android:color/white"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"
android:background="?colorPrimary"
app:layout_scrollFlags="scroll|enterAlways" />
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/messages_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
<LinearLayout
android:id="@+id/sender"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="center_vertical"
android:background="@android:color/white">
<EditText
android:id="@+id/inputText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:inputType="text" />
<Button
android:fontFamily="sans-serif"
style="?android:attr/borderlessButtonStyle"
android:textAppearance="?android:textAppearanceButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/send"
android:textColor="?colorPrimary"
android:id="@+id/send"/>
</LinearLayout>
</RelativeLayout>
Nachdem die Daten in Adapter zu ändern Ich versuche zum letzten Elemente zu bewegen (zum Beispiel durch recyclerView.smoothScrollToPosition (Größe);) und alles, was ich sehe, ist Teil der letzten Ansicht (nicht in voller Größe). Wenn recycleview nicht mit CoordinatorLayout verschachtelt ist - alles funktioniert wie erwartet - sehe ich die letzte Elementansicht in voller Größe. Wie kann ich das Layout so ändern, dass es korrekt funktioniert?
sein Was ist die Erwartung und was nicht funktioniert ..? – Psypher
Ich erwarte, dass nach dem Scrollen zur letzten Position sehe ich letzte Ansicht nicht geschnitten. Im Moment sehe ich nur einen Teil der Ansicht (es scheint, als ob es nicht bis zum Ende der letzten Ansicht gescrollt wurde - nur ein sehr kleiner Teil der Ansicht ist sichtbar). Wenn recycleview aus CoordinatorLayout heraus bewegt wird, funktioniert alles korrekt - scrollToPosition funktioniert so wie ich es erwarte - letzte Ansicht sichtbar, ohne etwas zu schneiden. Aber ich hoffe, es wird das gleiche Verhalten in CoordinatorLayout zu – dmtrlbdv
Entschuldigung, vergessen, hinzuzufügen. Ich benutze LinearLayoutManager und com.android.support:design:22.2.0 – dmtrlbdv