ios - UIImagePickerController 不旋转和平移/缩放

标签 ios objective-c cocoa-touch camera

我正在尝试反转我的 UIImagePickerController 以便它能够填满 iPhone 5 的屏幕并且显然是反转的。这是我为 UIImagePickerController 编写的代码:

- (void)applicationDidBecomeActive
{

UIImagePickerController *imageViewPickerController = [[UIImagePickerController alloc] init];
imageViewPickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
imageViewPickerController.showsCameraControls = NO;
imageViewPickerController.cameraViewTransform = CGAffineTransformMakeRotation(DEGREES_RADIANS(180));
imageViewPickerController.cameraViewTransform = CGAffineTransformMakeTranslation(0.0, 71.0);
imageViewPickerController.cameraViewTransform = CGAffineTransformScale(imageViewPickerController.cameraViewTransform, 1.333333, 1.333333);


[self presentViewController:imageViewPickerController
                   animated:NO
                 completion:NULL];


}

如果我运行这段代码,我不会得到任何反转。如果我这样修改它:

- (void)applicationDidBecomeActive
{

UIImagePickerController *imageViewPickerController = [[UIImagePickerController alloc] init];
imageViewPickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
imageViewPickerController.showsCameraControls = NO;
    imageViewPickerController.cameraViewTransform = CGAffineTransformMakeTranslation(0.0, 71.0);
imageViewPickerController.cameraViewTransform = CGAffineTransformScale(imageViewPickerController.cameraViewTransform, 1.333333, 1.333333);
imageViewPickerController.cameraViewTransform = CGAffineTransformMakeRotation(DEGREES_RADIANS(180));


[self presentViewController:imageViewPickerController
                   animated:NO
                 completion:NULL];


}

它会反转,但只占用 320x320 的屏幕正方形,忽略我的其他转换。如果有人可以提供一些关于如何让它遵循所有这些论点的专业知识,我将不胜感激。

最佳答案

您应该尝试将您创建的所有转换连接到一个转换中,然后将其设置为 cameraViewTransform,如下所示:

CGAffineTransform translate = CGAffineTransformMakeTranslation(0.0, 71.0);
CGAffineTransform scale = CGAffineTransformMakeScale(1.333333, 1.333333);
CGAffineTransform rotate = CGAffineTransformMakeRotation(DEGREES_RADIANS(180));
CGAffineTransform transform = CGAffineTransformConcat(translate, scale);
transform = CGAffineTransformConcat(transform, rotate);
imageViewPickerController.cameraViewTransform = transform;

关于ios - UIImagePickerController 不旋转和平移/缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23351661/

相关文章:

ios - 如何在odoo中创建客户(res.partner)时添加标签(Category_id)?

iphone - 错误 : expected expression before 'createCharacter'

cocoa-touch - 当一个 ViewController 的 View 被另一个 View 和 UIViewController Containment 在 iOS5 中隐藏时,viewWillAppear 和 viewWillDisappear 回调

iphone - 当我为 UITableView 设置 rowHeight 时,单元格的高度不应该也改变吗?

ios - 我们如何在 Facebook 墙上发布 ASCII 艺术作品?

ios - UICollectionView — 缩放单元格以适合屏幕

javascript - 来自 Facebook 的 React Native Navigator 示例代码失败 : type is invalid: expected a string (for built-in components) or a class/function

javascript - 使用 Phonegap 下载文件时 iOS 应用程序崩溃

objective-c - 框架和动态库的主要区别是什么

objective-c - Core Data 是否在 SQLite 文件之外存储任何状态相关信息