【发布时间】:2014-04-05 23:17:44
【问题描述】:
我有一个导航控制器和第一个 VC 模态到第二个很好。我按下ctrl+button 并将其拖过来,一切正常。
我正在从第一个 VC 做第二次 segue(再次),这次是另一个按钮,我是 ctrl+button 并将它拖到新的 VC 中,我在 XCODE 中收到一个 USELESS 错误 -
2014-03-04 11:57:21.340 OutTonight[3173:60b] -[SettingsViewController setDealdetail:]: 无法识别的选择器发送到实例 0x16e686d0 2014-03-04 11:57:21.342 OutTonight[3173:60b] * 终止应用程序到期 未捕获的异常“NSInvalidArgumentException”,原因: '-[SettingsViewController setDealdetail:]: 发送了无法识别的选择器 到实例 0x16e686d0' * 首先抛出调用栈:
这是我的prepareforseguecode
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSIndexPath *indexPath = [self.tableview indexPathForSelectedRow];
DealViewController *detailView = (DealViewController *)segue.destinationViewController;
detailView.dealdetail = [self.allcontent objectAtIndex:indexPath.row];
detailView.dealpostcode = [self.allpostode objectAtIndex:indexPath.row];
detailView.dealvenuename = [self.allname objectAtIndex:indexPath.row];
detailView.dealaddress = [self.alladdress objectAtIndex:indexPath.row];
detailView.dealaddress2 = [self.alladdress2 objectAtIndex:indexPath.row];
detailView.deallat = [self.alllat objectAtIndex:indexPath.row];
detailView.deallng = [self.alllong objectAtIndex:indexPath.row];
detailView.userlatitude = [[NSUserDefaults standardUserDefaults] objectForKey:@"UserLatitude"];
detailView.userlongitude = [[NSUserDefaults standardUserDefaults] objectForKey:@"UserLongitude"];
}
有什么想法吗?
【问题讨论】:
-
你添加了 UIButton 动作方法吗?因为无法识别的选择器意味着它没有关联的操作方法,例如,对于附加到 UITouchupInside 的 UIButton 操作方法。
-
我还没有对 UIButton 做任何事情,我还没有创建 IBAction 或任何东西 - 虽然这可能是问题?我应该放一个
-
在我的视图 controller.h 文件中为按钮创建了一个 IBAction,仍然错误
-
你是否在 secondViewController 中覆盖了 prepareForSegue
-
你能否为按钮创建一个 IBAction 并在方法调用中调用 [self performSegueWithIdentifier:@"segue identify" sender:self];并且在方法 prepareForSegue 你可以处理同样的事情。
标签: ios objective-c uiviewcontroller storyboard segue