iPhoneアプリの作成に関するチュートリアルをいくつか見てきましたが、InterfaceBuilderメニューの[オブジェクト]選択にアウトレットを追加しようとしています。ただし、チュートリアルで、オブジェクトでインスペクターを開き、右端のタブを選択すると、クラスIDの選択とインターフェイスビルダーIDに加えて、アウトレットを追加できる2つの追加のダイアログがあることに気付きました。それらが見つかりません。プロジェクトを作成したときに、ウィンドウベースのiPhoneプロジェクトを選択しました。なぜ私がそのアウトレットツールにアクセスできないのか誰かが知っていますか?
2 に答える
古いバージョンのxCodeを使用しているようです。最新バージョン4.6にアップグレードすることをお勧めします。
古いバージョンでは、「ウィンドウベースのアプリケーション」ではなく「ビューベースのアプリケーション」のテンプレートを選択する必要があります。
お役に立てれば。
チュートリアルで何を表示しようとしているのかわかりませんが、正しいアプローチは、コードでサブクラスを定義し、そのサブクラスにアウトレットを追加し、NSObjectをNIBにドラッグして、IDインスペクターでそのクラスをサブクラスに設定することです。 。そうでなければ、NIBがロードされたときにコンセントの接続は実際にどのように機能するのでしょうか?NIBローディング機構は、実際にはそのようなアウトレットを持たないNSObjectをインスタンス化し、それを接続しようとしますが、失敗します。
NSObjectには実際にはないアウトレットがあることをInterfaceBuilderに本当に説得したい場合は、ライブラリパネルを使用する必要があると思います。上部の[クラス]タブを選択してから、[NSObject]を選択します。IDインスペクターでクラス名の横にある右向き矢印をクリックしてそこに到達することもできます。
次に、パネルの下半分で、ポップアップから[アウトレット]を選択し、[+]をクリックしてアウトレットを追加できます。これは、そのNIB内のすべてのNSObjectがそのアウトレットを持っていることをInterfaceBuilderに伝えていることに注意してください。これはクラスごとのものであり、オブジェクトごとのものではありません。