背景: 我正在构建一个iPhone应用程序(XCode 9.2,iOS 11+),在该应用程序中,用户可以选择照片库图像作为笔记记录过程的一部分。 主要问题是,当他们回到笔记中时,如果将其与图像相关联,则必须从照片库中加载这些图像。 我不想将每个图像都转换为持久数据的数据对象,因为它们已经存在于设备中。 仅参考图像并在需要时显示它会容易得多。 本教程将介绍: •如何访问照片库和选择对象 •存储有关该对象的照片资产元数据 •以后通过使用存储的元数据检索对象 完成后,应用程序应如下运行: 我们在这里所做的是让我们的应用程序知道,当我们请求用户允许其照片库显示我们提供的文本消息时。 链接到照片框架 苹果有一个非常强大的框架来处理照片资产,称为照片。 我们将需要将此包含在我们的项目中。 返回项目导航器,然后单击顶部的项目图标,这会将项目设置加载到主要内容区域。 在顶部将出现几个导航选项,选择Build Phases。 与info.plist一样,“构建阶段”将具有多个选项,这些三角形的右上角指向三角形。 单击“将二进制文件与库链接”旁边的一个以显示其属性。 该区域允许您向应用程序中添加框架和库。 单击+图标,将显示一个弹出框,显示可用的框架。 开始在文本字段中输入“ 照片” ,列表将随着您输入的内容进行调整以显示匹配项。 选择Photos.framework选项,然后单击“添加”按钮以将其包括在项目中。 将UI元素添加到情节提要 现在,我们已经配置了应用程序,可以添加一些UI元素,以便我们可以从用户的设备中选择并显示照片。 返回到项目浏览器,然后选择Main.storyboard文件。 这将在内容区域显示应用程序的主故事板。 如果“ 实用程序”面板未打开,则显示它,并从按钮的下一行中选择“ 对象库” 。 使用下面的过滤文本字段或滚动浏览对象列表,选择一个UIButton并将其拖动到视图控制器顶部附近。 您可以根据需要在此处调整大小。 使用属性检查器将标题设置为“ 显示库”,您还可以在此处编辑按钮的字体,文本颜色和背景颜色。 使用另一个UIButton重复此过程,将其均匀放置在第一个按钮的右侧,将标题设置为Show Images。 第一个按钮将用于显示照片库,第二个按钮将用于在UICollectionView中查看选定的图像。 再次滚动浏览对象库,然后选择UICollectionView 。 选择它并将其拖到情节提要板上,将其放在按钮下方。 将UI元素连接到ViewController 通过单击右上角的Show Assistant Editor按钮来显示Assistant Editor 。 确保在助手编辑器中选择了ViewController文件。 在情节提要中,控制单击添加的UIButton。 将显示一个选择弹出窗口,选择“ 引用出口” […]
如何从照相馆获取图像? 什么是隐私说明? 让我们做一个简单的项目来演示它的实际作用。 创建一个新的Single View App项目。 热键:shift + Command + N NSPhotoLibraryUsageDescription ( String – iOS)此键可让您描述应用访问用户照片库的原因。 当系统提示用户允许访问时,此字符串将显示为警报的一部分。 尽管此密钥控制着对用户照片库的读写访问,但是如果您的应用程序仅需要向资源库添加资产并且不需要读取任何资产,则最好使用NSPhotoLibraryAddUsageDescription。 重要说明:为了保护用户隐私,在iOS 10.0或更高版本上链接的,访问用户照片库的iOS应用必须静态声明这样做的意图。 在应用程序的Info.plist文件中包括NSPhotoLibraryUsageDescription键,并为此键提供目的字符串。 如果您的应用尝试在没有相应目的字符串的情况下访问用户的照片库,则应用将退出。 那是许多可可隐私密钥之一。 阅读更多 苹果开发人员。 打开主板 如何将元素添加到情节提要? 只需按: Shift + Command + L – 找到UIButton,将其拖动以在故事板上查看– 打开拆分模式 –在按钮上按ctrl并将光标拖动到代码 打开ViewController.swift文件。 修改文件中的代码。 选择图像并查看控制台输出。 图像尺寸:(4032.0,3024.0) 是的 我们有一张图片。 有什么用呢? 这是你的选择。 你完成了! 拍! 拍! 请记住,成功的秘诀是不断学习和与同事沟通,包括自我教育。 这是有关照片库隐私的小指南。 在Apple Developer网站上了解更多信息。 不要停止自我教育。 GitHub项目 订阅我的帐户以获取有关新故事的通知。 […]
在本教程中,我们将做一个应用程序,允许从照片库或相机获取图像。 如果您遵循以下任何步骤,则可以在此处下载完整的源代码项目。 从照片库获取图像 要从照片库或相机获取照片,您需要初始化UIImagePickerController UIImagePickerController 一个视图控制器,用于管理用于拍照,录制电影和从用户的媒体库中选择项目的系统界面。 查看全部 要初始化它,请使用以下代码行: var imagePickerController = UIImagePickerController() 现在,您可以使用以下代码行显示UIImagePickerController: self .present(imagePickerController, animated: true , completion: nil ) 现在运行该应用程序,然后点击照片库按钮,您将看到以下内容: 您可以选择一个图像,UIImagePickerController将消失。 要将图像显示到UIImageView中,您需要执行以下步骤: 使您的视图控制器实现2种协议: UINavigationControllerDelegate和UIImagePickerControllerDelegate UIImagePickerController的集合委托是self: imagePickerController.delegate = self 添加以下两种方法: 就这样。 您可以在此处下载完整的源代码项目。 探索更多: PhotoPicker:使用UIImagePickerController选择图片并拍照