UINavigationController から UIImagePickerController をモーダルに提示し、ユーザーが写真を撮る代わりにキャンセルを押すという問題があります。UIImagePickerControllerDidCancel コールバックからビューを閉じますが、前のビューに戻ると、ビュー全体 (ナビゲーション バーを含む) が数ピクセル上に移動します。もう 1 つの非常に奇妙な点は、そのビューでテキスト フィールドを選択すると、キーボードが部分的に画面外に表示されることです。これは私の iPhone でのみ発生します (私は iPad のポップオーバー コントローラーで表示しましたが、問題はありません)。
didCancel コールバックのコードは次のとおりです。
-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad)
{
[popoverController dismissPopoverAnimated:YES];
}
else//for iPhone
{
[picker dismissViewControllerAnimated:YES completion:nil];
}
}
何か案は?