我有一个适用于风景的应用程序,已经在商店中,并决定在我的下一次更新中为某个新功能添加一个相机。
相机在我的 iPhone 3G 和 iPod 4S 中完美运行(我有一个 ipad,但它没有相机),但我的一个 ipad 2 测试人员报告说相机内的图像似乎顺时针旋转了 90 度(按钮中的小相机图标相同)。即使用户旋转 ipad 2,图像也始终保持旋转。拍摄照片后,它会显示它已保存正确的位置。
- 在提供更多细节之前,任何想法为什么会发生这种情况?(这可以帮助我追踪问题)。我只是不知道可以在相机内旋转预览图像!我目前对导致这种行为的原因一无所知。
- 这可能与我的视图控制器有关?我正在为“UIInterfaceOrientationPortrait”和“UIInterfaceOrientationPortraitUpsideDown”返回 NO。是的“UIInterfaceOrientationLandscapeLeft”和“UIInterfaceOrientationLandscapeRight”。如果理解正确,它应该是。
- 相机实现非常简单,只是一个 UIImagePickerController。创建它之后,我将它作为子视图添加到恰好顺时针旋转 90 度的特定 uiview 中(这可能是问题吗?但如果是,为什么它在我的其他带有相机的设备中正常工作?!)。我尝试应用转换([picker view].transform = CGAffineTransformMakeRotation(M_PI);)但它没有效果。
到目前为止,我还没有 ipad 2(它正在路上),但与此同时,我想解决这个问题,或者至少尝试了解它为什么会发生。
提前致谢。
干杯!
这是我处理旋转的视图控制器方法的代码:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
if(interfaceOrientation == UIInterfaceOrientationLandscapeLeft)
{
return YES;
}
else if(interfaceOrientation == UIInterfaceOrientationLandscapeRight)
{
return YES;
}
else if(interfaceOrientation == UIInterfaceOrientationPortrait)
{
return NO;
}
else if(interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
{
return NO;
}
}