ばかげているように聞こえるかもしれませんが、読んでください...
ストーリーボードによってインスタンス化された のUILabel
外部からのテキストを設定したいと考えています。UIViewController
テキストを設定するときにView Controllerのラベルプロパティが設定されていることを確認する必要があります。そうしないと、ラベルのテキストが設定されません(テキスト値を受け取るためにまだロードされないため)。
これが私の現在の解決策です:
// Show pin entry
if (!self.pinViewController) {
// Load pin view controller
self.pinViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"pinScreen"];
self.pinViewController.delegate = self;
if (!self.pinViewController.view) {
// Wait for pin screen to fully load
}
[self.pinViewController setMessageText:@"Set a pin for this device"];
}
最初は、の値が notにwhile
なるまでループするループがありましたが、ビューをチェックするというまさにその行為がそれをロードしているようです(ここで述べたように: http://developer.apple.com/library/ios/documentation/UIKit/Reference /UIViewController_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006926-CH3-SW37 )view
nil
この方法を試してみましたisViewLoaded
が、成功しませんでした。それはただ永遠にループしました。
上記のコードを現在の解決策として進めましたが、それは間違っていると感じています。
がロードされたことを確認するより良い方法はありUIView
ますか?