2

私は iPhone アプリケーション開発のバックグラウンドを持っています。OS X アプリケーションでアプリケーションの初期化フェーズがどのように機能するかを理解しようとしています。File's OwnerXcode 4.5.1 で最初にアプリケーションを作成したときに、オブジェクトとオブジェクトの両方を含む単一の XIB ファイルが提供されることは、不可解だと思いApplicationます。

どちらも同じではないにしても、アウトレットとインターフェイスのセットが似ているようです。だから私は疑問に思っていました:

  • それらは同じオブジェクトを指していますか?
  • の間、この XIB とインスタンスで正確に何が起こりますか?NSApplicationNSApplicationMain()
  • File's Ownerこの XIB の内容はどうなりますか?
  • コンセントを一方に接続する場合と他方に接続しない場合の違いは何ですか?
4

1 に答える 1

1

NSApplicationMain はブラックボックスであり、それが何をするかを正確に気にする必要はありません (正確にはわかりませんが、多くの異なることを行います) が、アプリ バンドルの info.plist を直接または間接的に読み取ることは確実です、メインメニューを含むプリンシパルクラスの名前とペン先の名前を見つけ、メインメニューのシリアル化を解除するプリンシパルクラス(NSApplicationまたはサブクラス)のインスタンスを作成します。

すべての nib には、アプリの NSApplication インスタンスと nib の「ファイルの所有者」(nib を非シリアル化したオブジェクト) のプレースホルダーがあります。

NSApplication インスタンスはメインメニュー nib のシリアル化を解除するため、この場合、Application と File's Owner プレースホルダーはたまたま同じオブジェクトになります。アウトレットをどちらに接続しても、同じオブジェクトに接続しています。

于 2012-10-24T20:12:44.427 に答える