質問

やあみんな、私は配列にtextfield.textエントリを追加しようとしています。私は別のビューにテキストフィールドからtextfield.textを引き出したいです。ここに私のコードです。

- (void)addBookmark{

MultiViewViewController *mainView = [[MultiViewViewController alloc] init];
if (mainView.addressTextField.text.length>1) {

NSString *addedString = [[NSString alloc] initWithFormat:@"%@", mainView.addressTextField.text];
[bookmarksArray addObject:addedString];
NSLog(@"addBookmark being called %@", mainView.addressTextField.text);
}
[bmTableView reloadData];

}

のNSLogはmainView.addressTextField.textが(NULL)であると言います。 何が間違っているのでしょうか?

役に立ちましたか?

解決

私が考える問題は、あなたがそのビューコントローラの参照を取得する必要があり、あなたがあなたのビュー階層に存在されたビューコントローラのテキストフィールドに書かれたテキストをしたいです。

しかし、あなたの場合、あなたはむしろあなたは、

新しいオブジェクトを作っている、既存のオブジェクトの参照を取得されていません
MultiViewViewController *mainView = [[MultiViewViewController alloc] init];
そのテキストフィールドにテキストを持つインスタンスではない

希望このことができます。

おかげで、

Madhup

他のヒント

私が見なければならないでしょう - (ID)initメソッドを、しかしaddressTextFieldがnil IVARあるように一見、それはこのようにあなたのNSLogが正しい、見えます。

どのようにテキストフィールドを生成したのですか?それはプログラムで生成された、またはXIBファイルを使用してましたか?それはXIBファイルにあった場合は、initWithNibNameを呼び出す必要があります:バンドルます:

デフォルトではnilでのUITextFieldのtextプロパティ。それには内容がないのであれば、それは実際にはゼロである必要があります。

ドキュメント

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top