5

まず、ストーリーボードを一切使用したくありません。ターゲットのView Controllerを「提示」することはできますが、上部の標準的なiOSの戻るボタンで表示することはできません。私が理解することは、コントローラを提示するのではなく、コントローラを押すことによって、これを動作させることができるということです。私はエラーはありませんが、何も起こりません。ストーリーボードなしで新しいビューをプッシュする方法

ボタンをクリックすると、このコードが実行されます。コメントのコードが正常にForgotPasswordPageを提示するものである:

変更は、パスワードのページ

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

をプッシュするための準備ができて - ビューコントローラをプッシュできるようにするには、ナビゲーションコントローラを使用する新しいニーズ。ストーリーボードを使用していないので、UINavigationControllerインスタンスを自分で作成し、それを使って初期ビューコントローラを表示する必要があります – Paulw11

+0

@ Paulw11詳細を教えてください。私はUINavigationControllerとして移動しているページと移動しているページの両方を宣言しました。他に何が必要ですか? – DMop

+0

あなたはUINavigationControllerサブクラスであるようにあなたのView Controllerを宣言しません。 UINavigationControllerはコンテナビューコントローラです。最初のビューコントローラをコンテンツとして割り当てて、UINavigationControllerを表示します。クラスリファレンスは、その動作を説明しています。https://developer.apple.com/library/ios/documentation/UIKit/Reference/UINavigationController_Class/ – Paulw11

答えて

2

を忘れたために//手動でバックバーを取得するためにUINavigationcontrollerを作成する必要があります。ただ配列にあなたはナビゲーションコントローラの下になりたいすべてのViewControllersを追加し、プッシュする。ここ

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

:これを行うには、このコードを使用することによって、これを達成this answerからのコードを、使用することができますそれらの間の。

私は時々、それははるかに良いプログラムでアプリケーションを開発していますことを知っているが、ストーリーボードはあなたに多くの時間を節約することができ、多くの時間があり、ジュリアン

+0

ありがとうございます。 私はログインページを持っており、ユーザーが「パスワードを忘れた」または「アカウント登録」ボタンをクリックし、一番上をクリックしてログインページに行くことを許可することを目指しています。これを行うにはこのコードを使用しますか? このコードは、配列内のすべてのビューコントローラのスタックをすぐに作成するようです。私が元々持っていたコードは、ボタンがクリックされたときにそれらの間を押し進めさせません。 – DMop

+0

できます。それは最良のアプローチではありませんが、うまくいくでしょう。この場合は、コントローラではなくナビゲーションバーをプログラムで作成し、戻るボタンを押したときにView Controllerを単に解除することを提案します。この場合の戻るボタンは、アクションがView Controllerを終了させる 'BarButtonItem'でなければなりません。しかし、コードは正常に動作するはずです。私はそれがはっきりしたことを望む。あなたはもっと丁寧な質問が必要な場合は:-) –

+0

ありがとう!私はそれを試してみましょう! – DMop

0

に役立ちます願っています。あなたはただ単に、あなたのストーリーボードで)...このような状況のために

1を、それを使用するあなたが

2をプッシュするために有効にするビューコントローラをローカライズ)、それを選択して、トップバー

で「エディタ」を見つけます

3)Editorのを選択>埋め込みのIn>ナビゲーションコントローラ

そして今、あなたのビューコントローラは、それはあなたが正しい

+0

これは主にgithubとの同期が簡単であるため、このようにしています。ありがとう、結構です! – DMop

関連する問題