0

アプリのログインを行ったので、それを完了するために、didfinishlaunching メソッドをデリゲートから変更しました。このメソッドでは、userdefaults からセッションを取得し、有効かどうかを確認します (サーバーへの呼び出し)。正しい場合はメイン ビュー コントローラーをロードし、そうでない場合はログイン ビュー コントローラーをロードします。

問題は、メソッド didfinishlaunching で、サーバーからの応答を待っているため、ビューコントローラーをロードしないことです。接続のデリゲートにビューコントローラーをロードします。これにより、2つの問題が発生します。

  • 1 つのメイン ビュー コントローラーをロードする必要があることを示すエラー
  • もしそうなら、私はviewcontrollerを入れて、viewcontrollerが表示される応答を待っている時間、そしてそれは非常に醜いです。

1つの解決策は、ローディングバーのみを使用して別のviewcontrollerを実行し、応答を待っている間にロードすることだと思います...

4

3 に答える 3

1

ビューコントローラーの1つを表示できると思いますが、アクティビティインジケーター付きのオーバーレイビューを追加し、応答を受け取ったらオーバーレイを削除して、応答に従ってビューコントローラーをリロードします。

于 2012-10-16T14:40:49.563 に答える
1

私が作成したアプリであなたが話していることを正確に行いました。最初に、アプリのスプラッシュスクリーンとして使用する画像と等しい UIImageView を持つ「SplashScreenViewController」を作成します。ここにはローディング ホイールがあり、必要なあらゆる種類のデータをロードします。必要なすべてのデータを受信したら、ルート コントローラーを読み込みます。

同じことができますが、セッションステータスに関連するコントローラーをロードできます。

于 2012-10-16T14:41:38.090 に答える
1

nsmainthred の処理中に、新しい nsthred を作成してビューの読み込みを作成し、View Controller からサブビューを追加します。応答を受け取ったら、このビューをスーパービューから削除し、応答に応じて、他のビューコントローラーを呼び出します

于 2012-10-16T14:43:05.360 に答える