将相机应用程序旋转复制到横向 IOS 6 iPhone

2024-03-07

您好,我正在尝试复制当方向转变为横向时可以在相机应用程序中看到的相同旋转。不幸的是我没有运气。我需要使用 UIImagePickerController 为自定义cameraOverlayView 进行设置。

从这张肖像来看(B 是 UIButtons)

|-----------|
|           |
|           |
|           |
|           |
|           |    
|           |
| B   B   B |
|-----------|

到这风景

|----------------|
|              B |
|                |
|              B |
|                |
|              B |
|----------------|

换句话说,我希望按钮粘在原来的肖像底部并在其中心旋转。我正在使用故事板并且启用了自动布局。任何帮助是极大的赞赏。


好的,我已经成功解决了这个问题。需要注意的是 UIImagePickerController 类仅支持 Apple 的纵向模式文档 http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImagePickerController_Class/UIImagePickerController/UIImagePickerController.html.

要捕获旋转willRotateToInterfaceOrientation在这里没用,所以你必须使用通知。此外,在运行时设置自动布局约束也不是可行的方法。

在应用程序委托中didFinishLaunchingWithOptions您需要启用轮换通知:

// send notification on rotation
[[UIDevice currentDevice]beginGeneratingDeviceOrientationNotifications];

In viewDidLoad相机OverlayView的方法UIViewController添加以下内容:

//add observer for the rotation notification
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:nil]; 

最后添加orientationChanged:相机叠加的方法UIViewController

- (void)orientationChanged:(NSNotification *)notification
{
    UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
    double rotation = 0;

    switch (orientation) {
        case UIDeviceOrientationPortrait:
            rotation = 0;
            break;
        case UIDeviceOrientationPortraitUpsideDown:
            rotation = M_PI;
            break;
        case UIDeviceOrientationLandscapeLeft:
            rotation = M_PI_2;
            break;
        case UIDeviceOrientationLandscapeRight:
            rotation = -M_PI_2;
            break;
        case UIDeviceOrientationFaceDown:
        case UIDeviceOrientationFaceUp:
        case UIDeviceOrientationUnknown:
        default:
            return;
    }
    CGAffineTransform transform = CGAffineTransformMakeRotation(rotation);
    [UIView animateWithDuration:0.4 delay:0.0 options:UIViewAnimationOptionBeginFromCurrentState animations:^{
        self.btnCancel.transform = transform;
        self.btnSnap.transform = transform;     
    }completion:nil];
}

上面的代码将旋转变换应用于我在本例中使用的 2 个 UIButtons btnCancel 和 btnSnap。这将为您提供旋转设备时的相机应用程序效果。 我仍然在控制台中收到警告<Error>: CGAffineTransformInvert: singular matrix.不知道为什么会发生这种情况,但这与相机视图有关。

希望以上内容有所帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将相机应用程序旋转复制到横向 IOS 6 iPhone 的相关文章

  • 如何在 Swift 3 iOS 10 中创建自定义相册

    这听起来可能是重复的 但经过搜索 我仍然没有得到 Swift 3 的预期答案 当我尝试使用添加资产时为资产创建占位符后addAssets 方法 Xcode 建议我将 assetPlacehoder 转换为 FastEnumeration 类
  • iOS UIView子类,将透明文本绘制到背景

    我想将文本绘制到 UIView 上的子类上 以便文本从形状中切出 并且视图后面的背景显示出来 就像在 OSX Mavericks 徽标中找到的那样here http www n3rdabl3 co uk wp content uploads
  • MPMediaItemPropertyAssetURL 仅针对 iPhone 5s 返回 null

    我一直在使用以下代码从 MPMediaItemPickerController 返回的 MPMediaItem 对象中提取资产 url 以便我可以将音乐文件从用户 iPhone itunes 音乐库复制到文档文件夹进行处理 但在 iPhon
  • 如何在松开按钮后立即看到新的视频层?

    我有一个应用程序 用户可以按住按钮来拍摄视频 然而 当他们这样做时 带有视频播放的新图层不会立即出现 相反 有一个非常短的延迟 在用户松开按钮后 您可以看到相机仍然显示相机所看到的内容 延迟结束后 视频立即显示并开始播放 但是 我怎样才能使
  • NSData 不接受有效的 base64 编码字符串

    我正在 iOS 7 客户端实现 JSON Web Token 身份验证 效果很好 我的应用程序接收令牌 并可以使用它们对我的服务器进行经过身份验证的调用 现在 我希望我的客户端代码检查令牌的过期日期 以便它知道何时重新进行身份验证 检查 J
  • 错误 ITMS-90207 Apple Store 提交

    当我在模拟器或设备上运行我的应用程序时 用于调试和发布构建配置 它可以完美运行 但是当我尝试将我的应用程序提交到 Apple Store 时 出现以下错误 错误 ITMS 90207 捆绑包无效 APPNAME app 处的捆绑包确实 不包
  • 在横向模式下向 UIScrollView 添加子视图

    我有一个以横向模式启动的视图控制器 其中有一个 UIScrollView 我尝试创建子视图并将它们添加到 UIScrollView 但视图的框架大小都是纵向大小 这是我的代码 void viewDidLoad super viewDidLo
  • Emoji 字符无法编码为 JSON

    我有一个UITextView我称之为messageField 其中的数据messageField is POST ed 以 JSON 格式发送到服务器 当用户输入表情符号字符时 我无法将数据编码为JSON 我认为 Emoji 使用 Unic
  • 在 iOS 中擦除绘图

    我正在开发一个绘图应用程序 我有一个UIBezierPath 我用它在touchesMoved中绘制 并将其转换为CGPath 然后在tCGplayer上绘制 这是我的代码 void touchesMoved NSSet touches w
  • iPad 2 检测

    由于我没有 iPad 2 因此我需要知道调用 UIDevice currentDevice model 时它返回什么 我以为它只返回 iPad 但看来我错了 有人可以告诉我吗 Thanks 检查是否有带摄像头的 iPad BOOL isIP
  • 在运行时动态创建核心数据模型

    是否可以在运行时从服务器上的一组实体生成核心数据模型 例如SharePoint 列表或 SQL MySQL Parse 我正在尝试采用动态路线 因为 SharePoint 列表 SQL Parse 中的字段可能会在将来随时添加 这意味着应用
  • 只有根级导航目的地对于具有同质路径的导航堆栈有效

    我正在尝试整合NavigationStack在我的 SwiftUI 应用程序中 我有四个看法 CealUIApp OnBoardingView UserTypeView and RegisterView 我想从OnBoardingView
  • 在 iOS 上的 OpenGL ES 2.0 中创建 16 位亮度纹理

    我的文件中有 16 位数据 我正在尝试将其加载到 iOS 上的 OpenGL 亮度纹理中 如果我手动将 16 位值重新调整为 8 位 我可以按如下方式加载和显示数据 glTexImage2D GL TEXTURE 2D 0 GL LUMIN
  • 如何使用 iOS 可达性

    我正在开发一个使用网络的 iPhone 应用程序 iPhone 通过 HTTP 请求与我的服务器通信 并且应该可以在 WiFi 和 3G 上运行 我目前使用NSURLConnection initWithRequest向我的服务器发送异步请
  • 如何检测 UISwipeGestureRecognizer 的结束?

    来自苹果文档 滑动是一种离散手势 因此每个手势仅发送一次关联的操作消息 void touchesEnded NSSet touches withEvent UIEvent event 当我使用 UISwipeGestureRecognize
  • scntool:无法转换文件,失败原因:*** -[__NSSingleObjectArrayI objectAtIndex:]:索引 1 超出范围

    我正在 Xcode 9 3 下开发一个基于 iOS 11 3 SceneKit 的项目 我有几个 dae 文件格式的 3D 模型 每当我构建项目时 其中一个模型不会被复制到最终的 iOS 包中 深入研究错误 我在复制捆绑资源构建阶段收到以下
  • 使用 Protobuf-net,我收到有关 List 未知线路类型的异常

    我已经开始将 Unity iOS 游戏转换为使用 Protobuf net 保存状态 看起来一切正常 直到我将此实例变量添加到GameState ProtoMember 10 public List
  • 如何在 iOS 中通过 Twitter API 获取用户电子邮件地址?

    我尝试了多个 SDK 但无法从任何资源获取电子邮件 ID 我努力了FHSTwitterEngine为此目的 但我没有得到解决方案 FHSTwitterEngine twitterEngine FHSTwitterEngine sharedE
  • 无法从 iOS 中的框架访问 .nib(XIB) 文件

    我已经从现有的代码库中创建了一个框架 并尝试在新的代码库中使用它 这很好用 但是当我尝试访问属于我的框架包的一部分的 nib 文件时 我的应用程序崩溃了 这是我用来访问视图控制器 XIB 文件的代码 testViewController c
  • 如何正确创建迦太基 cartfile?

    我正在研究购物车文件 迫不及待地想 简单地创建一个购物车文件 就像所有说明所说的那样 只是 如何 简单地 创建一个 Cartfile 我创建了一个纯文本文档 将其命名为 cartfile 并在其中复制了一些依赖项 Ran carthage

随机推荐

  • 使用双重哈希时,最佳的第二哈希函数是什么?

    我在一些人们使用的论坛上看到 7 key mod 7 or 6 key mod 6 这用于为任何大的键值计算双哈希的第二个哈希函数 使用 6 甚至不是素数 或 7 有什么重要性吗 或者它只是随机生成一些值 与线性探测和二次探测不同 参考 h
  • nbconvert 多索引数据帧到乳胶

    我正在尝试使用 ipython 的 nbconvert 将多索引 Pandas DataFrame 导出到乳胶 但多索引行结果都是错误的 我在代码开头使用以下代码来正确转换为乳胶 我在 SO 上的某个地方找到了它 但不记得在哪里 from
  • ViewPager内的ScrollView,自动滚动到中间

    我有一个 ViewPager 其中包含同一片段的多个实例 该片段包含一篇文章 文章视图层次结构非常简单 一个标题 一个横幅图像 一个副标题和一个正文 除了标题之外的所有内容都包含在滚动视图中 问题是 当您滑动到新页面时 片段会在顶部显示视图
  • 如何在每次测试后重置 Django 测试数据库 ID?

    我有一个 django 应用程序 我正在其上运行一些单元测试 所以我遇到的问题不是当一个测试插入测试数据库时 这是随后的测试 由于每个测试都不保存交易 因此先前测试的条目不存在这很好 尽管自动增量 id 正在增加 就好像数据库中仍然有条目一
  • 如何在 Svelte/Sapper 应用程序中包含 JQuery?

    有许多组件仍然需要我需要使用的 JQuery 不幸的是 在 Svelte Sapper 中执行此操作的最佳方法是什么 我应该使用 ES6 导入 修改汇总 还是最好的方法是什么 例如 我需要包含来自 DevExpress 或 Kendo UI
  • 在 grails 插件安装期间无法解决依赖关系

    我从 PC 中删除了 grails 文件夹 当我在 Intellij IDE 中打开应用程序时 buildConfig groovy 中提到的插件开始安装 安装了一些插件 但有六个插件无法安装 发生以下错误 C Program Files
  • 使用首选项在运行时更改语言 [android]

    我读了几遍官方指南 http developer android com guide topics ui settings html对于这个 以及许多其他的东西 比如这个网站上的问题 但我不能让我的工作 100 截至目前 如果我更改列表首选
  • 有人可以准确解释如果在堆上分配对象数组的过程中抛出异常会发生什么吗?

    我定义了一个类 foo 如下 class foo private static int objcnt public foo if objcnt 8 throw outOfMemory No more space else objcnt cl
  • 类型 存在于两个 DLL 中

    我在 Net 3 5 框架中有 1 个 DLL 在 2 0 框架中有另一个 DLL 这ListBoxItem类存在于 2 0 中 我已将 3 5 DLL 中的类链接到同一命名空间中 当我尝试编译时 出现 两者都存在 错误 我怎样才能编译它并
  • 使用 StaticResources 测试 WPF 窗口

    我有一个简单的窗口 其中引用了 App xaml 中的 StaticResource App xaml资源定义 使用资源的窗口组件
  • 项目参考条件包含多个条件

    这是我的 csproj 文件的片段
  • 如何在行号视图中激活修订信息

    我知道 Eclipse 有一个功能可以显示行号视图中一行的最后更改的修订信息 渐变着色 更多信息 如修订号 日期和鼠标悬停时的作者 有谁知道如何默认激活文件的此功能 甚至更好 我最近不小心点击了一些快捷方式 使其显示在一个文件中 但它不会显
  • Safari 模糊了奇怪的错误

    我目前正在重新设计我的一个网站 我使用 CSS 模糊滤镜 blur blur 5px webkit filter blur 5px 和一些 CSS 动画 animate blur transition 0 45s all ease out
  • 在 PowerShell 窗口中运行应用程序

    我正在尝试放弃命令提示符 因为它是一个死胡同 转向 PowerShell ISE 我还没有弄清楚如何在 PowerShell ISE 窗口中运行命令行应用程序 每次我使用 开始进程 时 都会出现 然后消失 命令提示符窗口 我看到有些人建议
  • Pig - 如何迭代一袋地图

    让我解释一下这个问题 我有这行代码 u FOREACH persons GENERATE FLATTEN 0 experiences as j dump u 产生以下输出 id 1 date begin 12 2012 descriptio
  • 使用 Java 注解限制方法的执行

    您知道是否可以检查谁在调用某个方法并限制他们是否可以使用 Java 注解执行该方法 例如 如果您有一个客户端和一个服务器 有多个用户 他们具有不同的角色 他们登录到客户端 然后 同一个客户端 不同的用户想要调用服务器上的 getMethod
  • 如何检查 wifi 中的互联网是否可用(尽管 Wifi 已连接)[重复]

    这个问题在这里已经有答案了 我用这个代码来检查互联网是否可用 ConnectivityManager connectivity ConnectivityManager context getSystemService Context CON
  • 是否有 JVM 模拟器/字节码执行可视化工具?

    我正在寻找一个可视化工具 它可以帮助解释 Java 字节码如何与操作数堆栈和局部变量交互 有吗 None
  • 随机数生成中的种子是什么意思?

    虽然我在谷歌中提到了种子的含义 但我无法得到我想要的确切答案 有人可以用例子解释吗 它是随机数生成器的随机数序列基础的初始值 如果您为两个随机数生成器提供相同的值 它们将产生相同的数字序列 这对于测试目的很有用 在生产中 您通常会为随机数生
  • 将相机应用程序旋转复制到横向 IOS 6 iPhone

    您好 我正在尝试复制当方向转变为横向时可以在相机应用程序中看到的相同旋转 不幸的是我没有运气 我需要使用 UIImagePickerController 为自定义cameraOverlayView 进行设置 从这张肖像来看 B 是 UIBu