2

ストーリーボードに 2 つの UIViewControllers (A と B) があります。Aビューコントローラーにはプロパティがあります

@property (nonatomic, retain) IBOutlet UIViewController *viewController;

ストーリーボード経由でBにリンクしたい.

ストーリーボード メニューの IBOutlets セクションにアウトレットが表示されますが、リンクできません。なぜ私がそれをやろうとしているのかは奇妙に思えるかもしれませんが、私にはそれが必要です。誰かがそれを行う方法を知っていますか?

4

3 に答える 3

6

IBOutlets は、単一のビュー コントローラー内の接続です。ビュー コントローラー内のオブジェクトへの参照を作成して、それらのオブジェクトをコードで使用できるようにします。

あるView Controllerから別のView ControllerにIBOutletsを作成することはできません。プロパティは正しい方法ですが、コードでプロパティを割り当てる必要があります。通常、1 つの View Controller が別の View Controller を作成すると、それ自体への参照が設定されることがあります。

OtherViewController *otherViewController = [OtherViewController alloc] init];
otherViewController.masterViewController = self;
// at this point "otherViewController" has a reference to the current view controller
于 2013-01-08T14:43:18.417 に答える
0

私はパーティーに少し遅れていますが、この仕事を助けるためにセグエクラスをまとめました. git リポジトリを表示して、クラスの動作を確認します: https://github.com/datinc/DATOutletSegue

基本的には、セグエの識別子を使用して親コントローラーに接続します

于 2014-02-05T22:13:12.973 に答える
0

今、私は何をする必要があるかを理解しています。UINavigationController を他の ViewController にリンクして RootViewController としてマークした場合と同じ結果を得るには、カスタム セグエを作成する必要があります。これは、IBOutlet ではなく、セグエによって行われます。

于 2013-01-08T15:05:21.563 に答える