获取文本字段的文本值,并通过单击按钮将该值传递给标签

时间:2012-03-29 03:20:16

标签: iphone objective-c uitextfield

单击按钮后,我的标签没有显示任何内容。这是我的.h和.m文件

.h文件

@interface TrialViewController : UIViewController

@property (weak, nonatomic) IBOutlet UILabel *myLabel;

@property (weak, nonatomic) IBOutlet UITextField *myTextField;

@end

.m文件

@implementation TrialViewController

@synthesize myTextField = _myTextField;

@synthesize myLabel = _myLabel;

 -(IBAction)buttonPressed:(id)sender {

    self.myLabel.text = self.myTextField.text;

 }

2 个答案:

答案 0 :(得分:0)

最常见的原因是没有连接插座或操作。你能在xib文件/故事板中检查吗?选择TrialViewController并选择右侧的连接检查器(小圆箭头)。

答案 1 :(得分:0)

当您使用weak作为声明的属性时,必须为该变量维护一些其他强引用,否则它将自动设置为nil。如果你声明它是强的,它会保留引用,直到你通过将它设置为nil(viewDidUnload中的典型值)来释放它。

更改这些行:

@property (weak, nonatomic) IBOutlet UILabel *myLabel;
@property (weak, nonatomic) IBOutlet UITextField *myTextField;

到此:

@property (strong, nonatomic) IBOutlet UILabel *myLabel;
@property (strong, nonatomic) IBOutlet UITextField *myTextField;

并将其添加到您的viewDidUnload方法:

_myLabel     = nil;
_myTextField = nil;