私は、問題のあるところで、拡張されたスペースをカスタムカラーまたはグラデーションで塗りつぶしたいという問題があります。しかし、RecyclerViewは、項目の間に空白を残して白い背景(スクリーンショット)を見たり、背景色を見たりすることによって行を拡張する方法で動作します。 onBindViewHolderが呼び出される展開アニメーションの後に、空のスペースが埋められます。RecyclerビューnotifyItemInserted空白
この空白の部分をカスタムビューで埋めることができますが、色がちらつくことなくきれいに広がってしまいます。
リスナーをアニメーションにアタッチし、その時間の間に仮想ビューをオーバーレイする方法はありますか?
子ビューが表示される前に、右:
子ビューが表示された後(グループが展開されている)
EDIT:要求されたとしてがRecyclerViewのXMLを追加しました
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
style="@style/myRecyclerViewStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</FrameLayout>
group_item.xml
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/list_group_item_height"
android:background="@android:color/holo_green_light"
android:clickable="true"
android:foreground="?attr/selectableItemBackground">
<TextView
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"/>
</FrameLayout>
child_item.xml
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/list_item_height"
android:background="@android:color/holo_green_light"
android:clickable="true">
<TextView
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"/>
</FrameLayout>
私はそのまだ同じをwrap_contentするために、すべての高さを変更しても、アニメーションはただ景色をepxandsし、空きスペースを残して(recyclerViewさん私は何とかしたいと思います。
これは、このライブラリーから取られている:あなたのアダプタクラスでmatch_parent
を与えている可能性があるためhttps://github.com/h6ah4i/android-advancedrecyclerview
あなたのXMLファイルを投稿してください –
@PratikPopat RecyclerViewのXMLを追加しました。 – box
とアイテムレイアウト? –