Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >iphone相册打开是横屏_苹果手机相册变成横屏怎么办

iphone相册打开是横屏_苹果手机相册变成横屏怎么办

作者头像
全栈程序员站长
发布于 2022-11-09 00:49:50
发布于 2022-11-09 00:49:50
2.3K0
举报

大家好,又见面了,我是你们的朋友全栈君。

1.在以往开发中,app调用相册一直没问题。最近开发ipad的时候,项目必须横屏,这时候调用相册的时候app就奔溃了

问题所在: 系统的相册只支持竖屏打开,如果你的app设置了只能横屏,就会冲突,打不开相册,程序会崩溃。

解决方法:

在网上找了很久,很多说在打开相册的时候强制竖屏,或者重写一个类,继承

UIImagePickerController,重写他的

-(BOOL) shouldAutorotate{

return Yes;

}

-(NSUInteger) supportedInterfaceOrientations{

}

-(UIInterfaceOrientation) preferredInterfaceOrientationForPresentation{

}

我也去试了一下,发现并没有什么卵用,都是ios6的,有些方法都弃用了。也许是我的打开方式不对,反正就是没用成功。

后面找了很久,找到一个解决方法,不一定好用,但是确实解决了这个问题。

方法:

1.写了一个管理横屏竖屏的单例类 DeviceDirectionManager

里面有3个方法,(1).是否是横屏。(2).设置横屏.(3).设置竖屏

2.在appDelegate 里面

– (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window

{

//判断是否是横屏

if ( [[DeviceDirectionManager getInstance] isHorizontal]) {

return UIInterfaceOrientationMaskLandscape;

}else{

return UIInterfaceOrientationMaskAll ;

}

}

3.选择从相册打开

-(void)selectPhotos{

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {

UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

//sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; //保存的相片

UIImagePickerController *picker = [[UIImagePickerController alloc] init];

picker.delegate = self;

picker.allowsEditing = NO;//是否允许编辑

picker.sourceType = sourceType;

[self dismissViewControllerAnimated:YES completion:^{

//在打开相册之前,设置屏幕为竖屏

[[DeviceDirectionManager getInstance] setVertical];

}];

[self presentViewController:picker animated:YES completion:nil];

}

}

4.选择结束或者取消选择的时候,都设置屏幕方向为横屏

[[DeviceDirectionManager getInstance] setHorizontal];

上传了一个小例子,方法是一样的,命名不一样

链接:http://download.csdn.net/detail/bark_ice/9375688

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190674.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月22日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
iOS实现视频和图片的上传
这里有事先创建两个可变数组uploadArray, uploadedArray, 一个存放准要上传的内容, 一个存放上传完的内容
周希
2019/10/15
2.1K0
iOS横竖屏切换
UIDeviceOrientation,表示设备朝向,可以通过[UIDevice currentDevice] orientation]获取,取值有:
落影
2022/09/28
2.9K0
iOS横竖屏切换
iOS屏幕旋转
UIInterfaceOrientation方向枚举: UIInterfaceOrientationPortrait //home健在下 UIInterfaceOrientationPortraitUpsideDown //home健在上 UIInterfaceOrientationLandscapeLeft //home健在左 UIInterfaceOrientationLandscapeRight //home健在右 旋转屏幕时触发的函数: //旋转方向发生改变时 -(void)willAnim
且行且珍惜_iOS
2018/05/22
1.8K0
iOS中,系统相册的那些事
在手机APP日益增加的前提下,如何更好的提升用户的交互体验似乎成为衡量一个APP重要指标。上述的感悟源于实际工作的需求,就是在APP中添加一个更换用户头像的功能。 也许别人会认为这样一个小功能不算什么,但从用户交互角度考虑,这样一个功能的设计有一定学问,待我慢慢道来。 获取相册最直接的方式——UIImagePickerController 功能介绍:可直接显示分组的相处的列表,用户选择不同相册的照片后,可在委托方法中获得该图片对象; API提供三种数据源: UIImagePickerControllerSo
Jacklin
2018/05/15
1.6K0
iOS摄像头和相册-UIImagePickerController
本文参考自:http://blog.sina.com.cn/s/blog_7b9d64af0101cfd9.html
Cloudox
2021/11/23
8820
iOS6中横屏的处理方法 原
IOS6以后,若想在项目中支持横屏,我们首先需要在plist文件中添加支持横屏的设置,否则有些代码设置将会失效。
珲少
2018/08/15
1.1K0
iOS6中横屏的处理方法
                                                                            原
IOS 图片上传处理 图片压缩 图片处理
提到从摄像头/相册获取图片是面向终端用户的,由用户去浏览并选择图片为程序使用。在这里,我们需要过UIImagePickerController类来和用户交互。 使用UIImagePickerController和用户交互,我们需要实现2个协议<UIImagePickerControllerDelegate,UINavigationControllerDelegate>。 View Code 代码如下复制代码 pragma mark 从用户相册获取活动图片 (void)pickImageFromAlbum
用户7705674
2021/10/29
6.1K0
iOS 自定义UIImagePickerController
  前后值不能切换,各种尝试找了半天没找到有原因。后来发现我在设置图片尺寸的时候设置为1080P[self.session canSetSessionPreset: AVCaptureSessionPreset1920x1080],前置摄像头并不支持这么大的尺寸,所以就不能切换前置摄像头。   我验证了下 前置摄像头最高支持720P,720P以内可自由切换。 当然也可以在前后置摄像头切换的时候,根据前后摄像头来设置不同的尺寸,这里不在赘述。
码客说
2019/10/22
1.6K0
从相册中选择或拍照设置并上传头像图片设置头像
相信很多app中都有通过拍照或者从相册中选择的方式设置并上传头像的功能。如下是我之前一个项目中通过相册或者拍照获取图片的一个功能(照片来源于网络)。现在把代码贴出来,大家使用时(点击imageView
VV木公子
2018/06/05
6.8K0
iphone 相册权限没办法开启_苹果请求访问App将在此处显示
问题描述:iOS11已经在plist文件中写了相关权限设置,但是在使用UIImagePickerController打开相册的时候却不提示用户选择权限,有以下几条情况:
全栈程序员站长
2022/11/08
1.3K0
swift2.0 UIImagePickerController 拍照 相册 录像
在app 里最常用的功能就是多媒体选择,首先我们storyboard 创建一个button 用于触发选择事件
全栈程序员站长
2022/07/05
4120
Native API 真香警告!手机原生功能调用来啦...接口丰富
「森的森」爱读诗歌的六年老码农 从 Cocos2d-x 到 Cocos Creator 写过数款网络游戏 平时也会发布一些贴子到 Cocos 论坛 时不时会发一些 Demo 和插件 今天受晓衡哥邀请,来介绍一下我的“NativeAPI” 注意!这不是游戏 截图有点朴素,请无视!
张晓衡
2020/11/02
2.4K0
Native API 真香警告!手机原生功能调用来啦...接口丰富
iOS屏幕旋转及其基本适配方法
前段时间抽空总结了一下iOS视频播放的基本用法,发现这其中还有一个我们无法绕过的问题,那就是播放界面的旋转与适配。的确,视频播放与游戏类型的App经常会遇到这个的问题。由于至今接手的项目中不常涉及这块知识疏于总结,在搜索了一些资料后也发现都很散乱,所以决定在这里重新整理一下。
梧雨北辰
2018/04/24
9.7K1
iOS屏幕旋转及其基本适配方法
iOS_从相机或相册里扫描二维码或条形码
遵循 AVCaptureMetadataOutputObjectsDelegate 协议,实现扫描回调方法:
mikimo
2023/10/18
6070
iOS开发——头像设置及本地沙盒保存,圆形头像显示
现在的APP中,对于头像的设置,我们大多采用圆形头像,并且需要支持从照相机获取或者从相册中选择用户需要的头像,并且保存在本地或者服务器中。
Originalee
2018/08/30
1.9K0
初探 Core ML:学习建立一个图像识别 App
在 WWDC 2017 中,Apple 发表了许多令开发者们为之振奋的新框架(Framework) 及 API 。而在这之中,最引人注目的莫过于 Core ML 了。藉由 Core ML,你可以为你的 App 添增机器学习(Machine Learning)的能力。而最棒的是你不需要深入的了解关于神经网络(Neural Network)以及机器学习(Machine Learning)的相关知识。接下来我们将会使用 Apple 开发者网站上提供的 Core ML 模型来制作示例 App。话不多说,Let’s
iOSDevLog
2018/05/17
3.1K0
React Native iOS原生模块开发实战|教程|心得
尊重版权,未经授权不得转载 本文出自:贾鹏辉的技术博客(http://www.devio.org) 告诉大家一个好消息,为大家精心准备的React Native视频教程发布了,大家现可以看视频学React Native了。 前言 一直想写一下我在React Native原生模块封装方面的一些经验和心得,来分享给大家,但实在抽不开身,今天看了一下日历发现马上就春节了,所以就赶在春节之前将这篇博文写好并发布(其实是两篇:要看Android篇的点这里《React Native Android原生模块
CrazyCodeBoy
2018/05/07
2.2K0
React Native iOS原生模块开发实战|教程|心得
多媒体-图片、音频、视频的基本实现
AVFoundation的录音和播放 音频的录制与播放主要和三个类有关AVAudioSession,AVAudioRecorder,AVAudioPlayer。 AVAudioSession AVAudioSession类由AVFoundation框架引入,每个iOS应用都有一个音频会话,这个会话可以被AVAudioSession类的sharedInstance类方法访问,如下:
進无尽
2018/09/12
2.2K0
【iOS学习】——手势识别
iOS 手势 1.如果一个控件继承于 UIControl,那么它将不需要手势 2.所有控件都可以添加手势 [控件 addGestureRecognizer: ] 3.iOS 系统提供的手势有哪些 UITapGestureRecognizer 点击 UISwipeGestureRecognizer 轻扫 UIPanGestureRecognizer 拖动 UIRotationGestureRecognizer 旋转 UIPinchGe
LeeCen
2018/10/11
1.7K0
【iOS学习】——手势识别
iOS 小技能:Method Swizzling (交换方法的IMP)
利用Objective-C Runtimee的动态绑定特性,将一个方法的实现与另一个方法的实现进行交换。交换两个方法的实现一般写在分类的load方法里面,因为load方法会在程序运行前加载一次,而initialize方法会在类或者子类在 第一次使用的时候调用,当有分类的时候会调用多次。
公众号iOS逆向
2022/08/22
1.8K0
iOS 小技能:Method Swizzling (交换方法的IMP)
推荐阅读
相关推荐
iOS实现视频和图片的上传
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档