【发布时间】:2013-08-28 20:51:06
【问题描述】:
我正在尝试将文本字段文本从一个控制器传递到另一个控制器,以便我可以通过电子邮件发送它。我正在关注一个例子,但我必须遗漏一些小细节。基本上,目标是将数据文本字段文本从 enteryournamecontroller 控制器传递到选项控制器的 nsstring。 nsstring 的字符串变量返回 null。
EnterYourNameController.h
@interface EnterYourNameController : UIViewController{
UITextField *textField;
id <EnterYourNameController> delegate;
}
@property (strong, nonatomic) NSString *stringEntered;
@property (strong, nonatomic) UITextField *textField;
@property (strong, nonatomic) id delegate;
EnterYourNameController.m
-(void)button{
stringEntered=textField.text;
((Options *) (self.delegate)).string = stringEntered;
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
Options *vc = [storyboard instantiateViewControllerWithIdentifier:@"Options"];
[self.navigationController pushViewController:vc animated:YES];
}
options.h
@interface Options : UIViewController <MFMailComposeViewControllerDelegate> {
NSString *string;
}
@property (strong,nonatomic) NSString* string;
@end
option.m
NSString *emailBody = [NSString stringWithFormat:@"%@",string];
【问题讨论】:
-
你在哪里调用选项控制器?
-
这条线是如何工作的? ((Options *) (self.delegate)).string = stringEntered;
-
我在按钮方法中调用选项控制器。我没有展示它,因为我想让它更干净一点。
-
@Puneet 它基本上使选项中的字符串等于 stringEntered。
标签: ios objective-c string