5

Her şeyden önce, storyboard kullanmak istemiyorum. Hedeflenen görüntü denetleyicisini "sunabiliyorum", ancak en üstteki standart iOS geri düğmesiyle gösterilemiyorum. Anladığım kadarıyla bunu sunmak yerine denetleyiciyi iterek işe başlayabilirim. Hiçbir hata alamıyorum, ama hiçbir şey olmuyor.Storyboard'lar olmadan Yeni Görünüm Nasıl İtilir Swift

Tek bir tuş üzerinde bu kod çalıştırılır.

// Değişiklikler Şifre Page

elle geri çubuğunu almak için bir UINavigationcontroller oluşturmak zorunda
func forgotPasswordSwitch(sender: UIButton!) { 
    //let ForgotPassword:ForgotPasswordPage = ForgotPasswordPage() 
    //self.presentViewController(ForgotPassword, animated: true, completion: nil) 
    let ForgotPassword = ForgotPasswordPage() 
    self.navigationController?.pushViewController(ForgotPassword, animated: true) 
} 
+0

itmek için hazır - bir görünüm denetleyicisi itmek için muktedir bir gezinti denetleyicisi kullanmak için yeni bir ihtiyaç . Bir storyboard kullanmadığınız için, UINavigationController örneğini kendiniz oluşturmanız ve ilk görüntü denetleyicinizi sunmak için kullanmanız gerekecek. – Paulw11

+0

@ Paulw11 lütfen detaylandırır mısınız? Hem hareket ettiğim sayfayı hem de UINavigationControllers olarak hareket ettim. Başka ne yapmam gerekiyor? – DMop

+0

Görünüm denetleyicilerinizi UINavigationController alt sınıfları olarak bildirmezsiniz. Bir UINavigationController bir konteyner görünümü denetleyicisidir. Bir tane oluşturun, ilk görüntü denetleyicinizi içeriği olarak atayın ve ardından UINavigationController'ı sunun. Sınıf referansı nasıl çalıştığını açıklar https://developer.apple.com/library/ios/documentation/UIKit/Reference/UINavigationController_Class/ – Paulw11

cevap

2

Unuttum için: yorumladı kodu başarıyla ForgotPasswordPage takdim budur. tam o sırada diziye ve itme içine Navigasyon denetleyicisi altında olmasını istediğiniz tüm ViewControllers eklemek İşte

self.window = UIWindow(frame: UIScreen.mainScreen().bounds) 
var nav1 = UINavigationController() 
var mainView = ViewController() //ViewController = Name of your controller 
nav1.viewControllers = [mainView] 
self.window!.rootViewController = nav1 
self.window?.makeKeyAndVisible() 

: Bunu yapmak için bu kodu kullanarak başarır this answer kodunu kullanabilirsiniz onların arasında. yardımcı olur

Umut Julian

+0

Cevabınız için çok teşekkür ederim! Bir giriş sayfam var ve kullanıcının "şifremi unuttum" veya "hesap kayıt" düğmesini tıklatmasına izin vermeyi ve daha sonra en üstte tıklayıp giriş sayfasına gitme seçeneğine sahip olmayı hedefliyorum. Bunu yapmak için bu kodu kullanabilir miyim? Bu kod, dizideki tüm görünüm denetleyicilerinin yığınını hemen oluşturur. Sonra aslında bir düğme tıklatıldığında aralarında itmeme izin vermeyeceğim kod. – DMop

+0

Yapabilirsin. En iyi yaklaşım değil ama işe yarayacaktı. Bu durumda, sadece navigasyon çubuğu olmayan bir kontrolör oluşturmayı ve sonra geri düğmesine basıldığında sadece görüntü kontrol cihazını kapatmayı öneririm. Bu durumda geri düğmesi daha sonra bir "BarButtonItem" olmalıdır, bu eylemde eylem denetleyicisini reddeder. Ancak kod sadece iyi çalışması gerekir. Umarım açıktı. Daha fazla ayrıntıya ihtiyacınız varsa sormaya çekinmeyin :-) –

+0

Teşekkürler! Bunu deneyeceğim! – DMop

0

Bazen çok daha iyi programlı uygulamalar geliştirmek olduğunu biliyorum, ama storyboard size çok zaman kaydedebilirsiniz birçok zaman vardır. Sadece basitçe, sen Film Şeridi 'In) ... Bu durumlar için

1 kullanmak size üst çubukta

"Editor") itmek için etkinleştirmek onu seçip bulmak istediğiniz görünümü denetleyicisi lokalize

3) Editör-seç> Göm İçi> navigasyon kontrolörü

Ve şimdi görünümü denetleyicisi bu Haklısınız

+0

Bu şekilde yapıyoruz, çünkü daha çok github üzerinde eşzamanlıyor. Yine de teşekkürler! – DMop

İlgili konular