Facebook'ta kullanılanlara benzer bir görünüm denetleyicisi geçişi uygulamak ve diğer birçok uygulama için anlık görüntü eklenir. CoreAnimation çerçevesiyle oynamak ister mi yoksa araç setinde mi mevcut olacak?Stil geçişi nasıl yapılır
cevap
Sen birisi önerdi 3. bölüm çerçevesini almak istediğiniz sürece CoreAnimation kullanmak zorunda, ama öyle CoreAnimation'ı kullanmak çok basit ve ben bunu öğrenmenizi öneririm çünkü çok güçlü. İşte size bir fikir vermek için mümkün olan en basit yaklaşım.
@interface yourViewController : UIViewController {
// The facebook view in the example, this will be the view that moves.
// Init this view with x=0 and let it cover the whole screen.
IBOutlet UIView *topView;
// The fb menu in the example
// Init this view so that it stays behind the topView.
IBOutlet UIView *bottomView;
BOOL menuVisible; // init to false in viewDidLoad!
}
arayüz oluşturucu veya kod tarafından veya bununla onları oluşturun: viewcontroller olarak
2 görüşlere sahip: Eğer ihtiyaçlarına uygun, onu asmak aldıktan sonra Sen biraz daha iyi kendiniz yapısı olabilir alışkınsın Onları birbirinin üst üste gelmesini sağlayın, böylece sadece topView'u göreceksiniz ve ekranın arkasında kalmasını sağlayabilirsiniz. kullanıcı menüsünü göstermek için düğmeye basan: Elbette
-(IBAction)menuButtonPressed:(id)sender {
// Set up animation with duration 0.5 seconds
[UIView beginAnimations:@"ToggleMenu" context:nil];
[UIView setAnimationDuration:0.5];
// Alter position of topView
CGRect frame = topView.frame;
if (menuVisible) {
frame.origin.x = 0;
menuVisible = NO;
} else {
frame.origin.x = 300; //Play with this value
menuVisible = YES;
}
topView.frame = frame;
// Run animation
[UIView commitAnimations];
}
, siz "facebook görünümü" için kendi UIView alt sınıflarını uygulamalıdır ve "menü görünümü" vb ve Topview için kullanmak ve Yukarıdaki örnekte bottomView.
Merhaba Aynı zamanda iphone uygulamasında da aynı işlevselliği uygulamaya çalışıyorum. TopView'u kaydırmak için toggleMenu animasyonunu önerdiğiniz ve kullandığınız için iki UIView kullandım. Ama bir UINavigationController kullandığımdan beri topView ile kayar, sadece aynı pozisyonda kalır. bu konuda ne yapabilirim? Önerilerinizi çok takdir ediyorum. – Yasodha
Bu "kendiniz yapın" -solution olduğundan, UINavigationController ile birleştirmek karmaşık olacaktır. Görünümünüzün üstünde kalmak için NavigationController ile yaşayamazsanız, onu kullanmayı bırakıp kendi gezinme çubuğunuzu hazırlayabilirsiniz (bunu öneririm) veya menü görünürken gizleyebilirsiniz. Eminim onu bir kenara itmek için bir yol var eminim, ama nasıl görmeye çalışacak kadar değer göremiyorum ... –
@ user1280436 Navigasyon çubuğunu canlandırarak gezinmek için navigationcontroller.view kullanmayı deneyin. . lütfen deneyin bunu daha önce yapmadım. –
bu bir göz atın, size bir başlangıç noktası verebilir: https://github.com/Inferis/ViewDeck/
Merhaba Aynı zamanda benim iphone uygulamasında aynı işlevselliği uygulamaya çalışıyorum. Önerilen şekilde iki UIView kullandım ve topView'i kaydırmak için toggleMenu animasyonunu kullandım. Ama bir UINavigationController kullandığımdan beri topView ile kayar, sadece aynı pozisyonda kalır. bu konuda ne yapabilirim? Önerilerinizi çok takdir ediyorum. Şimdiden teşekkürler. – Yasodha
Bu Cocoa Touch'da mevcut değil, kontrol cihazlarını ekranda görüntülemeniz ve görüntülemeniz ve üst tarafını kendinize sürüklemeniz gerekir. –
Başlarken herhangi bir şey/kaynak? – Firdous
Üzgünüm. Hiç iyi bir kaynak bilmiyorum –