【问题标题】:Errors when moving between a tableView and a view在 tableView 和视图之间移动时出错
【发布时间】:2014-08-30 16:36:32
【问题描述】:

我有一个导航控制器,它连接了一个 tableView 控制器。 tableView 有一个视图。在完成边缘滑动后,从程序中调用此 segue。 UIScreenEdgePanGestureRecognizer 应用于视图。 这是我调用 segue 的代码。

-(void)handleEdgeSwipe:(UIScreenEdgePanGestureRecognizer *)swipe
{

[self performSegueWithIdentifier:@"SettingS" sender:self.navigationController];

}

执行了segue,但是当我按下后退按钮时,tableView 控制器没有显示,只有带有后退按钮的背景图像。这是我在控制台中得到的:

2014-07-09 16:54:34.322 APPNAME[3313:60b] nested push animation can result in corrupted navigation bar

2014-07-09 16:54:34.676 APPNAME[3313:60b] Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.

2014-07-09 16:54:34.827 APPNAME[3313:60b] Unbalanced calls to begin/end appearance transitions for FDDSettingsViewController: 0x10945d370.

这是我得到的错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Can't add self as subview'

有人有什么想法吗?

编辑!

问题解决了。 这是手势识别器触发了两次,我添加了一个 if 语句来检查它是否刚刚开始。现在编码:

-(void)handleEdgeSwipe:(UIScreenEdgePanGestureRecognizer *)swipe
{
if (swipe.state == UIGestureRecognizerStateBegan) {
    [self performSegueWithIdentifier:@"SettingS" sender:nil];
}

}

现在可以了。

【问题讨论】:

    标签: ios objective-c uitableview ios7 uinavigationcontroller


    【解决方案1】:

    segue 不应该真的来自 UITableView。转场应该来自导航控制器。你能确认你是从 UINavigationController 而不是 UITableView 附加 segue 吗?

    【讨论】:

    • 什么意思?代码在 tableViewController 的文件中,但发送者是 navigationController。
    • 连接segue的时候,是从UITableView还是ViewController连接的?
    • 你是如何处理后退按钮的?您得到的错误是由于您在正确完成另一个 segue 之前调用了一个 segue。这可能发生在您的 UITableView 调用故事板中的 segue 以及 -(void)handleEdgeSwipe:(UIScreenEdgePanGestureRecognizer *)swipe 中。如果您注释掉 [self performSegueWithIdentifier:@"SettingS" sender:self.navigationController];只需点击 UITableView 单元格?
    • 如果它被注释掉,它不会继续。 tableView 单元格与此无关。后退按钮由导航控制器处理。
    • 你是如何处理后退按钮的?
    猜你喜欢
    • 1970-01-01
    • 2018-03-24
    • 1970-01-01
    • 2022-01-06
    • 1970-01-01
    • 2023-03-05
    • 2016-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多