开发者

Problem getting textfield.text from other view controller

开发者 https://www.devze.com 2022-12-24 17:54 出处:网络
Hey guys, I\'m trying to add a textfield.text entry to an array. I want to pull the textfield.text from a text field in another view. Here\'s my code.

Hey guys, I'm trying to add a textfield.text entry to an array. I want to pull the textfield.text from a text field in another view. Here's my code.

- (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];

}

The NSLog says the mainView.addressT开发者_StackOverflow社区extField.text is (NULL). What am I doing wrong?


The problem I think is you want the text written in the textfield of a view controller which is existing in your view hierarchy, so you should get the reference of that view controller.

But in the case of yours you are not getting the reference of an existing object, rather you are making a new object

MultiViewViewController *mainView = [[MultiViewViewController alloc] init];

which is not the instance which has text in its textfield.

Hope this helps.

Thanks,

Madhup


I would have to see the - (id)init method, but at first sight, it looks like addressTextField is a nil ivar, thus your nslog is correct.


How did you generate the text field? Was it generated programmatically, or with a xib file? If it was in a xib file, you should call initWithNibName:bundle:


The text property of an UITextField in nil by default. So if there is no text in it, it should actually be nil.

Documentation

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号