Hi和tnxs阅读。 测试是声明,呼吁在我的视图控制器viewDidLoad中作为的NSString:如何通过IBAction传递对象?
- (void)viewDidLoad
{
[super viewDidLoad];
NSString *test = [[NSString alloc]init];
test = @"This is a Test";
}
但是,如果尝试在IBAction为使用测试,没有什么是过去了,我得到的测试字符串的NULL来代替。
- (IBAction)changeLabel:(id)sender {
NSString *message = [NSString stringWithFormat:@"Hello, %@", test];
[self.simpleLabel setText:message];
[self.simpleTextField resignFirstResponder];
很明显,有一些基本的我很想念,但不幸的是我无法在其他帖子中找到它。 提前Tnxs。
是'test'也伊娃或财产?如果是这样,请从'viewDidLoad'中删除'NSString * test = [[NSString alloc] init];'行。这是创建一个名为'test'的局部变量,它隐藏了名为'test'的伊娃。 – rmaddy 2014-09-06 20:52:27
Tnxs,这回答了我的问题!但是,由于这个简单的例子起源于一个更复杂的例子,而不是一个字符串,我使用一个字符串名称作为其属性之一的自定义类,如果我没有alloc/init它在viewDidLoad我不能使用它;并通过这样做,它在IBAction中是不可见的,虽然它被添加到头文件中... – LukasGF 2014-09-07 08:45:48