我有一个按钮出口集合收集10个最接近的商店位置并按顺序显示它们。我试图做的是每当按下一个按钮时,它会打开一个详细信息控制器并在新窗口中显示标题。我拥有的代码声明查询和出口集合如下:
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
int i = 0;
for (PFObject *object in objects) {
if (i >= [self.EventTitles count]) break;
[(UIButton *)self.EventButtons[i] setTitle:[object objectForKey:@"objectId"] forState:UIControlStateNormal];
[(UIButton *)self.EventButtons[i] addTarget:self action:@selector(DetailEvent1:) forControlEvents:UIControlEventTouchUpInside];
i++;
}
}
}];
和详细信息Event1操作代码:
-(IBAction)DetailEvent1:(id)sender {
TableDetailViewController *objDetail = [[TableDetailViewController alloc] initWithNibName:@"TableDetailViewController" bundle:nil];
objDetail.??????? = self.????????;
}
我需要一些帮助写作如何将所选对象转发到tabledetailviewController。我真的很感谢您的帮助。
如果您使用故事板为新视图控制器创建一个segue,则只需在DetailEvent1
中调用performSegueWithIdentifier
即可。然后设置VC标题并传递新的VC在Preparforsegue中需要的任何数据。
to 设置新视图的标题作为从按钮和按下新视图控制器此代码应工作的(假设您的当前视图已经在UINavigationController
中):
-(IBAction)DetailEvent1:(id)sender
{
TableDetailViewController *objDetail = [[TableDetailViewController alloc]
initWithNibName: @"TableDetailViewController"
bundle: nil];
// Copy button's title
objDetail.title = ((UIButton *)sender).titleLabel.text;
// Push new view controller
[self.navigationController pushViewController:objDetail animated:YES];
}