Jak mogę zaimplementować animację, którą widzimy na ekranie Coverflow aplikacji Muzyka iPhone'a? kiedy klikasz na mały widok, zmienia się i zmienia na inny widok? jak mogę to zrobić? Mogę użyć animacji głównej, aby odwrócić i skalować widok, ale jak mogę przejść do innego widoku? Dziękijak zaimplementować animację przejścia do widoku iPhone'a zarówno za pomocą rzutowania, jak i skalowania?
Odpowiedz
Potrzebujesz UIView
jako kontener dla dwóch UIView
S (frontside/backside), a następnie usunąć/dodać te z/do kontenera jako subviews robiąc animacje pomiędzy:
UIView *flipContainer;
UIView *frontSide;
UIView *backSide;
//...
-(void)turnUp
{
[backSide removeFromSuperview];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:flipContainer cache:YES];
[UIView setAnimationDuration:1.0];
CGAffineTransform transform = CGAffineTransformMakeScale(1.2, 1.2);
flipContainer.transform = transform;
[UIView commitAnimations];
[flipContainer addSubview:frontSide];
}
-(void)turnDown
{
[frontSide removeFromSuperview];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:flipContainer cache:YES];
[UIView setAnimationDuration:1.0];
CGAffineTransform transform = CGAffineTransformMakeScale(1, 1);
flipContainer.transform = transform;
[UIView commitAnimations];
[flipContainer addSubview:backSide];
}
działa jak czar. dzięki! –
Ha! Wywołałeś '+ [UIView setAnimationDuration:]' dwa razy! –
I Próbuję dokładnie kodu, który robisz - dostaję efekt powiększenia, ale nie odwracam. Jedyna różnica polega na tym, że tuż przed kodem turnUp dodałem flipContainer (z wyświetlaniem z tyłu), więc można go przewrócić.
// construct animation container
self.flipContainer = [[FlipContainer alloc] init];
[self.flipContainer.view setFrame:CGRectMake(clickedSquareX, clickedSquareY, 200, 200)];
[self.flipContainer.view addSubview:self.backside.view];
// add animation container
[self.myParentView.view addSubview:self.flipContainer.view];
// PROCEED to your turnUp code
Powodem robię to mam kilka zdjęć w poziomym UIScrollView i tak „symulacyjnej” a 200x200 obraz odwracania się i powiększanie, aby pokazać detal dodam moje flipContainer z tyłu przedstawiający dokładny obraz na dokładnym miejscu wciśniętego obrazu. To powinno działać, czyż nie? Nieco mylące dla mnie jest to pierwsza linia kodu podnoszącej zrobić:
[backSide removeFromSuperview];
..which zniosłaby widoku Właśnie dodaną.
Nie jestem pewien, czy jest to właściwe miejsce, w którym można umieścić to pytanie - przepraszam, jeśli tak nie jest!
- 1. Jak przyspieszyć animację przejścia strony?
- 2. Jak zaimplementować animację serca Periscope?
- 3. Jak zaimplementować animację Google Listview
- 4. Jak zaimplementować uchwyt do widoku?
- 5. Jak zaimplementować XOR za pomocą + - * /?
- 6. UIView blok animacji wstrzymuje zarówno animację, jak i kod zakończenia
- 7. Jak wstrzymać i wznowić animację CSS3 za pomocą JavaScript?
- 8. Animowanie tłumaczenia i skalowania widoku w Androidzie
- 9. Jak zaimplementować podkomendy za pomocą opcji Boost.Program_oprogramowania?
- 10. Jak zaimplementować filtr dolnoprzepustowy za pomocą java
- 11. Jak zaimplementować dane wejściowe za pomocą maski
- 12. Jak zaimplementować GPUImageMaskFilter za pomocą GPUImage
- 13. Jak zaimplementować polimorfizm za pomocą std :: shared_ptr?
- 14. Jak mogę zaimplementować katalogi wirtualne za pomocą node.js i wyrazić?
- 15. Jak zaimplementować prostą architekturę REST i ContentProvider za pomocą modeli?
- 16. Jak zaimplementować wyliczanie za pomocą generycznych?
- 17. Jak zaimplementować statystykę za pomocą danych dropwizard i spring-mvc
- 18. Jak wyłączyć punkty skalowania elementów canvas za pomocą pliku fabric.js?
- 19. Jak zaimplementować wyszukiwanie niestandardowe za pomocą smart-table i angularjs
- 20. Jak zastosować animację odrzuceń do mojego widoku tekstowego?
- 21. Jak zaimplementować asynchroniczne żądanie REST do kontrolera za pomocą Springboot?
- 22. Jak uzyskać animację tętnienia za pomocą biblioteki wsparcia?
- 23. Jak zmienić presentViewController animację Transition
- 24. Jak zrobić animację atomu za pomocą animacji CSS3?
- 25. Jak uzyskać lepszą animację za pomocą kodu w WPF?
- 26. Jak uzyskać zarówno szczegóły testu, jak i zasięg za pomocą NUnit i dotCover?
- 27. Jak animować przycisk akcji pływającej za pomocą przejścia na Androida?
- 28. Jak zaimplementować animację ładowania podczas nawigacji w aplikacji na iPhone'a?
- 29. Jak zaimplementować mechanizm przeglądania widoku dla PagerAdapter?
- 30. Jak dodać animację do DialogFragment?
Zobacz tę odpowiedź: http://stackoverflow.com/questions/5511514/custom-transition-between-twoiviews/8931492#8931492 – aoakenfo
Odpowiedziałem na podobne pytanie tutaj (z kodem): http: // stackoverflow. com/questions/19171918/how-can-i-flip-and-enlarge-a-uiview-it-at-like-like-ios-7-ipad-app-stor –