2016-09-01 4 views
1

私は現在、Android 6用のJavaで書かれたスクール用のグレードマネージャーに取り組んでいます。Android RecyclerビューnotifyItemRemovedアニメーションを切断しました

問題:
私は右上の場所に私のRecycleViewアダプタと左下の場所からの最後のCardViewの移動の方法notifyItemRemoved()を呼び出すと、ビューのサイズが変更され、アニメーションがカットされます。

今、RecycleViewのlayout_height属性がmatch_parentであるため、そのビューのサイズが変更された理由がわかりません。

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.NestedScrollView 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" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context=".SemesterActivity" 
    tools:showIn="@layout/activity_semester"> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/subject_list_view" 
     android:padding="20dp" 
     android:layout_below="@+id/title" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical"/> 

</android.support.v4.widget.NestedScrollView> 

私はRecycleViewのためのLayoutManagerとしてGridLayoutManagerを取りました。

SubjectAdapterObj.notifyItemRemoved(viewHolder.getAdapterPosition()); 

アニメーションは、デフォルトのアニメーションです:私はRecycleViewを更新方法

subjectListView.setLayoutManager(new GridLayoutManager(ActivityContext, 2)); 

GridLayoutManagerは問題ですか?

ビデオ例:

Animation cut off

申し訳ありません。英語は母国語ではありません。

+0

使用しているrecyclerviewのバージョンは何ですか? – Abbas

+0

recycleview-v7-23.4.0それはどういう意味ですか? – Velrest

+0

'RecyclerView'の' onMeasure'をオーバーライドし、max-heightを設定してみてください。 – Abbas

答えて

2

私は最終的に問題が何であるかを知りました。
実際にはNestedScrollViewは子のサイズを変更していました。
これで、NestedScrollViewにandroid:fillViewport="true"を追加するだけです。

それはそれです。本当に難しいバグではありませんが、誰かを助けてくれることを願っています。私はちょうど間違った場所を探しました。

関連する問題