2016-06-22 22 views
0

LoginControllerというUIViewControllerのサブクラスを作成しました。私はいくつかの要素を持つビューコントローラを含むLoginController.xibファイルがあります。 ViewControllerのクラスをLoginControllerに設定し、LoginControllerにメインインターフェイスを設定しました。私のアプリを起動すると、私は、純粋な黒い画面が続く私のスプラッシュ画面が表示されます。私のLoginControllerクラスはデフォルトのコードを持っています。カスタムUIViewControllerサブクラスは黒い画面しか表示しません

class LoginController: UIViewController 
{ 
    override func viewDidLoad() 
    { 
     super.viewDidLoad() 

    } 

    override func didReceiveMemoryWarning() 
    { 
     super.didReceiveMemoryWarning() 
    } 
} 
+0

Xibファイルがロードされていません。LoginControllerの初期化コードを投稿できますか?ストーリーボードを使ってみませんか? – lubilis

+0

私が投稿したコードはすべてLoginControllerコードです。私はストーリーボードを使用していません(少なくともこの部分は)私がやっていることと一致していないようです。これはログイン画面ですので、ログインボタンを押すと、検証してから次の画面に進み、エラーを表示する必要があります。ログインボタンから次の画面へのセグがある場合は、prepareForSegueで検証できますが、検証が失敗した場合はセグを停止する方法はありません。 – robz

+0

検証が成功した場合にのみsegueを実行し、検証が失敗した場合はshouldPerformSegueWithIdentifierメソッドを使用してセグメント遷移を停止することができます。それが正しいアプローチです。とにかくそれを使用したくない場合は、viewDidLoadメソッドでxibファイルをロードするか、initWithNibNameメソッドを使用してAppDelegateからLoginViewControllerを手動で起動する必要があります – lubilis

答えて

1

新しいxcodeプロジェクトを作成しました。私の結果は全く正常です。だから、あなたはLoginController.xibを最初のxibとして設定していないからです。

+0

これを行うと画面が白くならない。 – robz

+0

アプリケーションの起動時にLoginControllerを初期View Controllerとして設定しましたか? LoginControllerがロードされているかどうかを確認するために 'super.viewDidLoad'の下にいくつかの行を追加することができます。 –

+0

@robz私はちょうど新しいxcodeプロジェクトを作成しました。私の結果は全く正常です。だから、あなたはLoginController.xibを最初のxibとして設定していないからです。 –

関連する問題