UINavigationBar在UIImagePickerControllerDidCancel之后被提升?

时间:2013-01-25 01:01:06

标签: iphone ios ipad uinavigationcontroller uiimagepickercontroller

我有一个问题,我从UINavigationController模态呈现UIImagePickerController,用户按下取消而不是拍照。我从UIImagePickerControllerDidCancel回调中忽略了该视图,但是当我返回到上一个视图时,整个视图(包括导航栏)向上移动了几个像素。另一件非常奇怪的是,当我在该视图上选择文本字段时,键盘会部分显示在屏幕外。这只发生在我的iPhone上(我将它呈现在iPad的弹出控制器中并且没有问题)。

这是我的didCancel回调代码:

-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
    if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)
    {
        [popoverController dismissPopoverAnimated:YES];  
    }
    else//for iPhone
    {   
        [picker dismissViewControllerAnimated:YES completion:nil];    
    }
}

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用此行:

[self dismissViewControllerAnimated:YES completion:nil];

取代这一行:

[picker dismissViewControllerAnimated:YES completion:nil];