2016-07-26 19 views
5

Mam 3 fragmenty wewnątrz ViewPager w działaniu, chcę osiągnąć przejście elementu współdzielonego z jednego fragmentu do innego działania. Przejście pochodzi z widoku recyklera, który znajduje się wewnątrz fragmentu, który znajduje się w przeglądarce stron, która znajduje się wewnątrz działania. Aktywność-> Widok> Podgląd> Recyklerkajak przejść współużytkowanego elementu z fragmentu do działania

Przeszukałem każde miejsce w Internecie, ale są tylko informacje o przejście z jednego fragmentu do drugiego i jedno działanie do drugiego. Nie ma treści o przejściu z fragmentem działalności

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()); 

Na stosując powyższy kod drugie działanie jest uruchomiony, ale nic nie jest widoczne, na przykład druga aktywność zawiera Fab, które po kliknięciu youtube jest uruchomiona. wiem gdzie FAB jest tak po kliknięciu na ślepo, YouTube uruchomił poprawnie, ale nic nie jest widoczne w drugim aktywności

D/ViewRootImpl: changeCanvasOpacity: opaque=true 

Jego jednym z logcats. Myślę, że to musi być problem !!

Odpowiedz

0

Miałem ten sam problem, nie mogłem znaleźć niczego, co pomogłoby mi przykro, ale może powinieneś zastanowić się, dlaczego potrzebujesz relacji Fragment do Aktywności, kiedy możesz pracować z relacją Fragment do Fragmentu lub Aktywności do Aktywności.

Mam rozwiązać mój problem, że sposób zmieniający mój kod do fragmentu Fragment relacji i tam jest mnóstwo dokumentacji i przykłady o tym Shared Element Transitions

+0

tak źle spróbuj użyć zagnieżdżone fragmenty i odpowiedzi! – user3740778

+0

w tej chwili nie jest to możliwe – Carlos

0

Fragment działalności jest taki sam jak Aktywny działalności, Ponieważ fragment jest wewnątrz działania.

+0

Teoretycznie jest to poprawne, ale praktycznie podczas kodowania zapisujesz przejście z fragmentu, ponieważ elementy nie są w działaniu jego fragmentem. Ostatecznie jest to fragment do działania. – user3740778

0

W końcu znalazłem odpowiedź, metoda wywoływania startActivity jest inna. Trzeba zadzwonić

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

z AppCompactActivity

Powiązane problemy