我试着用UIImagePickerControllerUIImagePickerControllerSourceTypePhotoLibrary,但是上面写着"禁止拍照".模拟器从哪里获得图像?我应该将图像复制到哪里才能在模拟器中显示它们?

推荐答案

要将图像、视频等放到模拟器上,最简单的方法是将它们从您的计算机拖放到模拟器上.这将导致模拟器打开照片应用程序并开始填充库.


如果您想要一个可编写脚本的方法,请继续阅读.

注意-虽然这是有效的,并且可以工作,但我认为现在Koen's solution below更好,因为它不需要重新启动模拟器.

通过转到Xcode->;Devices,选择您的模拟器,并判断标识符值来识别您的模拟器.或者,您可以确保模拟器正在运行,然后运行以下命令以获取设备ID xcrun simctl list | grep Booted

~/Library/Developer/CoreSimulator/Devices/[Simulator标识符]/DATA/MEDIA/DCIM/100APPLE

然后添加img_nnn.THM和img_nnnn.JPG.然后您需要重置模拟器(硬件-&>重新启动)以使其能够注意到新的更改.如果它们不是JPEG也没关系-它们都可以是PNG,但看起来它们必须都存在才能正常工作.如果DCIM尚不存在,则可能需要创建DCIM,在这种情况下,您应该从0001启动nnnn.JPG文件是全尺寸版本,而THM文件是缩略图,大小为75x75像素.我写了一个脚本来做这件事,但是有一个文档更好的超过here的脚本(-link不再起作用).

您还可以通过点击并按住图像,在模拟器中添加Safari中的照片.如果您将图像(或任何其他文件,如PDF)拖到模拟器中,它将立即打开Safari并显示图像,因此这是一个相当简单的将图像放入模拟器的方法.

Ios相关问答推荐

按钮在 SwiftUI 中没有采用给定的高度和宽度

async/await、Task 和 [weak self]

判断Apple LiveText是否可用?

Flutter:无法构建 iOS 应用程序“ARCHIVE FAILED”,为设备归档时遇到错误

如何在 Apple Silicon (M1) 上运行 CocoaPods

SwiftUI 应用生命周期 iOS14 AppDelegate 代码放哪里?

从 Xcode 11.1 升级到 Xcode 11.2 后,应用程序因 _UITextLayoutView 而崩溃

如何在不使用 ForEach 的情况下从 SwiftUI 中的列表中删除行分隔符?

SwiftUI @Binding 初始化

如何在 SwiftUI 中创建多行 TextField?

文本未包含在 swift UI 中

错误 Appstore 连接:Info.plist 文件中缺少目的字符串

Xcode 命令 /usr/bin/codesign 失败,退出代码为 1:errSecInternalComponent

内循环;构建可能会产生不可靠的结果:Xcode 错误

Xcode:“此时无法安装此应用程序.”

使用 JSONEncoder 将 nil 值编码为 null

如何获取 iTunes 连接团队 ID 和团队名称?

Xcode 9 - “固定宽度约束可能导致剪辑”和其他本地化警告

从 WKWebView 获取所有 cookie

DispatchQueue.main.async 和 DispatchQueue.main.sync 之间的区别