1

我的 rootViewController 基于 UITabViewController 和选项卡视图之一,我初始化 UINavigationController 以推送视图。

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:addStoreViewController];

[self presentModalViewController:navController animated:YES];

然后我在 addStoreViewController 中推送另一个视图,这是代码:

PictureViewController *pictureViewController = [[PictureViewController alloc] init];    
[self.navigationController pushViewController:pictureViewController animated:YES];

最后,我想在 pictureViewController 中使用 UIImagePickerController 这是我相机按钮的代码:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.delegate = self;

[self presentModalViewController:imagePicker animated:YES];

我的视图控制器的级别:

[UITabViewController] > [UINavigationController] -> [AddStoreViewController] -> [PictureViewController] > [UIImagePickerViewController]

一切正常,但有一点很奇怪。呈现 UIImagePickerViewController 后,其他视图将受到舞台动画的影响。视图中的整个 UI 将显示一个额外的动画,例如 UITextField、UINavigationBar、UIButtons...您在视图中看到的所有内容。即使您打字,文字也会以奇怪的动画显示!我的代码有什么问题吗?我用谷歌搜索了这个问题很长时间,但找不到。谁能帮助我?太感谢了!

4

1 回答 1

1

哎呀,我找到了答案,我真是个白痴……这是由我的 UIView 动画引起的。我忘了[UIView commitAnimations]在我的动画末尾插入这个。

于 2013-01-25T03:25:42.783 回答