iOS dev noob here ..
我的主ViewController上有一堆按钮,我想要发生的是当用户点击其中一个按钮时,我希望它将它们带到一个带有标签的单独视图,我希望文本在根据他们按下的按钮改变标签。
所以基本上我希望能够将主ViewController上的按钮按下的数据传递到第二个视图中的标签。
这可能有点令人困惑,我道歉,但任何帮助将不胜感激。
答案 0 :(得分:1)
我建议你尽可能使用故事板。然后,您可以按住每个按钮拖动到拖动到故事板上的新视图控制器。这将设置一个segue,您可以使用prepareforseguie方法传递您需要在新视图控制器中使用的数据。
答案 1 :(得分:0)
假设带有按钮的视图控制器位于导航控制器中 - 可能是在根...
您要做的是,为每个按钮添加目标,在代码中可以使用addTarget:action:forControlEvents:
UIButton
来完成
例如:
[myBtn addTarget:self action:@selector(tappedButton:) forControlEvents:UIControlEventTouchUpInside];
tappedButton方法将通过点击按钮发送消息:
- (void)tappedButton:(UIButton*)sender{
// exploit the button
}
在此方法中,您可以获得按钮的标题 - myBtn.titleLabel.text
然后,您可以创建一个新的视图控制器(让我们保持简单,并说您有自己的UIViewController
子类名为MySimpleViewController
。
在此课程中,您有一个cameFrom
属性,可以设置按钮的标题,在viewDidLoad
的{{1}}中,您将获得MySimpleViewController
的属性值,这可能是方法实现。
cameFrom
在您的- (void)tappedButton:(UIButton*)sender{
MySimpleViewController *detail = [[MySimpleViewController alloc] init];
detail.cameFrom = sender.titleLabel.text;
[self.navigationController pushViewController:detail
animated:YES];
[detail release];
}
MySimpleViewController's
中,您创建了一个viewDidLoad
,为text属性提供UILabel
的值,并将其添加到self.cameFrom
的视图中}