0

.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
}

在没有使用 NSString 的变量 str 设置 UITextField 值的情况下,我做错了什么?这是某种接口生成器设置吗?我有文件所有者的委托链接。

4

2 回答 2

2

似乎 str 为零,所以什么也没有发生。你的最后两行做同样的事情。你应该写

NSString *str = email.text;

然后用str做一些事情,比如

user.email = str;

或直接

user.email = email.text

如果您想使用 UITextField 中的文本更新用户电子邮件。

于 2012-05-06T09:44:38.870 回答
0

也许您忘记将您的插座与 Interface Builder 中的接口连接起来

如果您不知道如何操作,请参阅:

http://developer.apple.com/library/mac/#recipes/xcode_help-interface_builder/CreatingOutlet.html

于 2012-05-07T06:15:29.877 回答