在.h内部
@interface MyController : UIViewController<UITextFieldDelegate> {
IBOutlet UITextField *phonenum;
IBOutlet UITextField *email;
}
@property (nonatomic, retain) UITextField *phonenum;
@property (nonatomic, retain) UITextField *email;
-(IBAction) btnClicked: (id) sender;
@end在.m内部
-(IBAction) btnClicked: (id) sender{
NSString *str = [[NSString alloc]init];
NSLog(@"str=%@",str); //this contains valid value
email.text=str; /// does not set the value
[[self email] setText: str]; // does not set the value
}如果没有使用变量str (即UITextField )设置NSString值,那么我做了什么错事呢?这是某种Inteface设置吗?我有指向文件所有者的委托链接。
发布于 2012-05-06 09:44:38
似乎是零,所以什么都不会发生。最后两行也是一样的。你应该写
NSString *str = email.text;
然后用str做一些事情,比如
user.email = str;
或直接
user.email = email.text
如果您想用UITextField中的文本更新用户电子邮件。
发布于 2012-05-07 06:15:29
也许你忘了用interface中的接口连接你的插座
如果你不知道怎么做,请看:
http://developer.apple.com/library/mac/#recipes/xcode_help-interface_builder/CreatingOutlet.html
https://stackoverflow.com/questions/10469353
复制相似问题