2016-07-26 68 views
5

Bir etkinlikte bir ViewPager içinde üç parçam var, parçalardan birinden başka bir etkinliğe paylaşılan öğe geçişini gerçekleştirmek istiyorum. Geçiş, bir Aktivite Aktivite-> ViewPager-> Fragman-> RecyclerviewPaylaşılan öğe bir parçadan bir etkinliğe nasıl geçilir

'un içinde yer alan bir görüntüleyicinin içindeki bir fragmanın içindeki geri dönüşümcü bir görünümden kaynaklanmaktadır. Her bir yeri internette aradım ancak sadece bilgi var Paylaşılan eleman bir parçadan diğerine geçiş ve bir etkinlik diğerine. vardır İkinci faaliyet başlatılır Yukarıdaki kodu kullanarak üzerinde parçasından aktivitesi

holder.poster.setTransitionName("posterX"); 
      ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation((Activity) con,holder.poster,holder.poster.getTransitionName()); 
      Log.e("Animation", "Success"); 
      //startActivity((Activity) con,intent,options.toBundle()); 
      c.startActivity(intent,options.toBundle()); 

geçişle ilgili herhangi bir içerik, ancak hiçbir Örneğin, ikinci faaliyet youtube başlatıldı tıklanan bir Fab içerir, görülebilir. Ben FAB i körlemesine tıkladığınızda yüzden nerede olduğunu, youtube doğru başlattı ama hiçbir şey ikinci etkinlikte

D/ViewRootImpl: changeCanvasOpacity: opaque=true 

logcats ait Onun bir görülebilir. Bence bu sorun olmalı!

cevap

0

Aynı sorunu yaşadım, özür dileyen bir şey bulamadım, ancak belki bir Fragman Parçaya veya Etkinlik ile Etkinlik ilişkisi için çalışabildiğinizde, Neden Etkinlik'e İlişkin Fragman'a ihtiyacınız olduğunu yeniden gözden geçirmelisiniz.

sizin Fragment Çünkü ben, yolu Aktiviteye Aktivite aynı olan ilişkisini Parçalara bir Fragment için kodumu değişen ve bol dokümantasyon ve Aktivite o Shared Element Transitions

+0

den

startActivityFromFragment(fragment, intent, req_code, options.toBundle()); 

aramak zorunda! – user3740778

+0

şu anda bu mümkün değildir – Carlos

0

Fragment ilgili örnekler var benim sorunu hallettim bir etkinlik içinde.

+0

Teorik olarak doğrudur ama pratik olarak kod yazarken, parçalardan geçiş yazıyorsunuz, çünkü elemanlar parçanın içinde değil. Sonuç olarak, bu aktivite için bir parçadır. – user3740778

0

Sonunda cevabı buldum, startActivity çağırma yöntemi farklı. Çok kötü yuvalanmış parçaları kullanmayı deneyin ve cevap AppCompactActivity