2015-08-17 16 views
10

değiştirmek için:nasıl böyle Navigasyon Denetleyicisi olmadan başka bir görünümden değiştirmek için presentViewController kullanıyorum presentViewController Geçiş animasyonu

let HomeView = self.storyboard!.instantiateViewControllerWithIdentifier("HomeView") as! ViewControllerHome 
self.presentViewController(HomeView, animated:true, completion: nil) 

Nasıl geçişi değiştirilir? Navigasyon denetleyicisi gibi aynı animasyonu istiyorum.

başka geçişler kullanabilirsiniz, ancak ben burada istiyorum geçişi bulmuyorum, bu yapmam gereken budur ben iOS8 bu yaptığını herkes için

let HomeView = self.storyboard!.instantiateViewControllerWithIdentifier("HomeView") as! ViewControllerHome 
HomeView.modalTransitionStyle = UIModalTransitionStyle.PartialCurl 
self.presentViewController(HomeView, animated:true, completion: nil) 
+0

Onun olsa çok iyi burada oldukça eski bir soru yanıtlandı. http://stackoverflow.com/questions/5004102/is-there-a-way-to-change-the-animation-style-of-a-modal-view-controller-appearan – lazyDroid

+0

@lazyDroid teşekkürler, Ben animasyon değiştirebilirsiniz ama ben –

+0

kullanın navigasyon kontrolörü istediğiniz animasyonu bulmuyorum, kod mesaja eklenen yapmak başardı. İstemediğiniz tüm şeyleri kaldırabilir ve animasyonu alabilirsiniz. –

cevap

9

kullanıyorum kodudur:

Ben hızlı bir sınıf dosyası başlıklı SettingsView.swift ve SettingsView.xib adında bir .xib dosyası var. Ben MasterViewController.swift bu çalıştırın (ya da herhangi bir görüş kontrolör gerçekten ikinci bir görüntüleme denetleyicisi açmak için)

@IBAction func openSettings(sender: AnyObject) { 
     var mySettings: SettingsView = SettingsView(nibName: "SettingsView", bundle: nil) /<--- Notice this "nibName" 
     var modalStyle: UIModalTransitionStyle = UIModalTransitionStyle.CoverVertical 
     mySettings.modalTransitionStyle = modalStyle 
     self.presentViewController(mySettings, animated: true, completion: nil) 
    } 
+0

Mükemmel cevap .. – Mehul

+0

Apple tarafından sağlanan bu animasyon koleksiyonu çok saçma. Bu PartialCurl gibi ezici ve zar zor yarayacak şeyler sağlar, ancak CoverHorizontal gibi temel şeyler özledim. – modiX

+0

evet, sana katılıyorum. mevcut olmalı. – Mehul

7

mehul cevabı doğrudur ama bunu istediğiniz şekilde yapmak da olabilir. instantiateViewController (withIndentifier: string) ile

Bu benim böyle yaparız:

let destController = self.storyboard?.instantiateViewController(withIdentifier: "") as! YourViewController 
destController.modalTransitionStyle = .flipHorizontal 
self.navigationController?.present(destController, animated: true, completion: nil) // OR 

let destController = self.storyboard?.instantiateViewController(withIdentifier: "") as! YourViewController 
destController.modalTransitionStyle = .flipHorizontal 
self.present(destController, animated: true, completion: nil) 
İlgili konular