2016-12-04 11 views
0

私は実際には、Android Transition APIで本当に奇妙な問題が発生しています。私はsharedElementImageViewを持っています。私はOSにこれら2つの要素の間でTransitionを処理させます。しかし私は、このログCardView Android移行のレイヤーを作成できません

でしかし、
One SharedElement

私はあなたが見ることができるようanimatingAvatarViewですよのみelementの下GIFに示すようonBackPressedクラッシュアプ​​リをこの奇妙な問題を抱えています

java.lang.IllegalStateException: Unable to create layer for CardView at android.os.MessageQueue.nativePollOnce(Native Method) at android.os.MessageQueue.next(MessageQueue.java:323) at android.os.Looper.loop(Looper.java:144) at android.app.ActivityThread.main(ActivityThread.java:5845) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687) 

Activity

Layout

第を開始コード

<com.fastaccess.ui.widgets.AvatarLayout 
      android:id="@+id/avatarLayout" 
      android:layout_width="48dp" 
      android:layout_height="48dp" 
      android:transitionName="@string/image_transition"/> 

Layout

<com.fastaccess.ui.widgets.AvatarLayout 
      android:id="@+id/avatarLayout" 
      android:layout_width="48dp" 
      android:layout_height="48dp" 
      android:layout_gravity="top" 
      android:transitionName="@string/image_transition"/> 

そして、ここで私はこの後Transition

ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(activity, 
sharedElement, ViewHelper.getTransitionName(sharedElement)); 
activity.startActivity(intent, options.toBundle()); 

これ以上の空想のコードを起動していない方法です、私はここでsupportFinishAfterTransition

を呼んでいる以外、他のですgifただしはありません&正常に動作します。 クラッシュログがあまりわかりませんが、私はComment TextViewにその原因を確認することができます正直に言うと enter image description here

は、それがSharedElementとは何の関係もありませんが、それが原因であると思われるも、カントーされます私のテストごとに、クラッシュに。
これまでに誰かがこれに遭遇し、私が諦めたようにそれを修正する方法を見つけたなら、それは素晴らしいことでしょう。

ご意見をお寄せください。

答えて

1

まず修正しよう:私はカスタムTextViewからhasOverlappingRendering()falseを返していました重要な一歩をhappen.Anotherます同じクラッシュViewPager上またはRecyclerViewにそれを設定しなかったかのように

RowItemrootLayout自体を上android:transitionGroup="false"を設定クラス。しかし、これによってExitTransitionはちらつきの背景色になるもう一つ奇妙な問題私はこれをもっと掘り下げようとしています。&は、ちらつきの背景に解決策が見つかるか、他の誰かがこれを修正する別の方法を見つけるまでこの答えを受け入れません。

編集

奇妙な背景がCommentTextViewを保持していること、実際にCardViewそのものです。

編集

実は、CardViewは実際の原因&ある長いTextView I'vは私の行項目のルート要素としてLinearLayoutにCardViewを変更し、すべて私がやった上での回避策、すべてを削除されていませんうまく動作しているようです。なぜそれが問題を引き起こすのかわからない、私は誰かが実際に助けることができたホッピングだ&なぜ大きいCardViewがこの問題の原因となるのかを精巧にする。

関連する問題