2

私は Objective-C が初めてです。mainすべての Objective-C プログラムはmethodで始まることがわかっています。その後、しばらくすると終了するはずですが、iOS アプリケーションはそのメソッドの最後に到達しても実行を続けます。説明していただけますか?

4

2 に答える 2

4

これは、次の行を実行すると実行ループが作成されるためです。

    int retVal = UIApplicationMain(argc, argv, nil, nil);

実行ループは、着信イベント (ボタンの押下、マウスの動き、タイマー、ネットワーク アクティビティなど) を処理します。このループは決して終了しません。アプリを終了する方法は、OS またはexit()呼び出された場所からアプリを終了する関数のいずれかです。exit()OS は常にバックグラウンドでアプリの終了を処理する必要があるため、iOS でこの関数を呼び出さないでください。

于 2013-08-20T02:18:29.837 に答える
0

UIApplicationMain を呼び出す行は、アプリケーション全体に対して実行を継続するループを設定します。したがって、基本的には、アプリケーションが実行されている間ずっとメイン ループの途中にあります。終了するのは、システムが終了するように指示したとき、またはアプリがクラッシュしたときだけです。アプリの終了などの変更に対応する場合は、Application Delegate メソッドを実装する必要があります。繰り返しますが、iOS 向けのプログラミングで main.m ファイルの変更が必要になることはほとんどありません。

于 2013-08-20T02:18:23.477 に答える