UINavigationController popViewController动画问题



我有LoginViewControllerIphone实例,我在其中推送TasksRootViewControllerIphone的实例

然后在TasksRootViewControllerIphone(出现后 10 秒)我打电话[self.navigationController popViewControllerAnimated:YES];

并收到错误:

[NSRecursiveLock isSystemItem]: unrecognized selector sent to instance 0x3ba360

我尝试打印导航控制器堆栈:

po [self.navigationController viewControllers]
$2 = 0x003445f0 <__NSArrayI 0x3445f0>(
<LoginViewControllerIphone: 0x3b73c0>,
<TasksRootViewControllerIphone: 0x3af290>
)

所以它有适当的视图控制器。任何想法怎么会发生?

更新:

推送代码:

           self.tasksRootViewControllerIphone = [[TasksRootViewControllerIphone alloc] initWithNibName:@"TasksRootViewControllerIphone" bundle:nil];
            self.tasksRootViewControllerIphone.view.backgroundColor = [UIColor clearColor];
            [self.loginViewControllerIphone.navigationController pushViewController:self.tasksRootViewControllerIphone animated:YES];

在TasksRootViewControllerIphone.m中,我有:

- (void)viewDidLoad
{
    [self performSelector:@selector(popCurrentViewControllerAnimated) withObject:self afterDelay:10];
}
- (void)popCurrentViewControllerAnimated
{
    [self.navigationController popViewControllerAnimated:YES];
}

将 viewDidload 方法更新为

 - (void)viewDidLoad
{
    [self performSelector:@selector(popCurrentViewControllerAnimated) withObject:nil afterDelay:10];
}

希望它能解决您的问题。

由于该方法popCurrentViewControllerAnimated不接受任何参数。 所以withObject应该nil. 不是self.

我找到了重点。

问题是因为它不是弧形项目,其中一个UIBarButtonItems被发布了一次。

奇怪,但它导致了popViewController的问题。

相关内容

  • 没有找到相关文章

最新更新