我试图使用UIImagePickerController与UIImagePickerControllerSourceTypePhotoLibrary,但它说,“没有照片”。模拟器从哪里获得图像?我应该在哪里复制图像,以便它们在模拟器中显示?
当前回答
在OS X Catalina和Xcode 11中,你必须做不同的事情。
首先你必须启动模拟器。如果你想复制,说一张照片到多个模拟设备。把它们都启动。然后右键单击一个单一(多个图像将失败。只做一个文件。)
共享->模拟器
将弹出“共享表”。您必须在组合框中选择一个活动模拟器并点击发送。
它将发送一个到许多,但不是许多到许多选定的照片。
我希望这能帮助到大家。Xcode和OS X的上一个版本支持拖放,但OS X Catalina和Xcode 11不支持拖放。
虽然这是在方向,但目前是行不通的。
对我来说有用的是首先将我的图像导入到OS X的iPhoto中,然后从我的OS X iPhoto中拖放它们,然后放入模拟器中。它将出现拖放照片到模拟器目前只能从OS X iPhoto工作。: - (
其他回答
使用Xcode 6+ (iOS Simulator 8.1及以上版本)附带的新iOS模拟器,这要容易得多。现在你所要做的就是把一张或多张照片拖到iOS模拟器窗口上,然后不是打开Safari浏览器,而是打开照片应用程序,并立即将所有拖进来的照片添加到设备中。
将图像、视频等放到模拟器上的最简单方法是将它们从计算机拖放到模拟器上。这将导致模拟器打开照片应用程序并开始填充库。
如果您想要一个可编写脚本的方法,请继续阅读。
注意-虽然这是有效的,并且工作,我认为Koen下面的解决方案现在是一个更好的,因为它不需要重新启动模拟器。
通过到xCode->Devices,选择您的模拟器,并检查Identifier值来识别您的模拟器。或者,您可以确保模拟器正在运行,并运行以下命令获取设备ID xcrun simctl list | grep Booted
去
~ /图书馆/开发/ CoreSimulator /设备/(模拟器标识符)/数据/媒体/ DCIM / 100苹果
and add IMG_nnnn.THM and IMG_nnnn.JPG. You will then need to reset your simulator (Hardware->Reboot) to allow it to notice the new changes. It doesn't matter if they are not JPEGs - they can both be PNGs, but it appears that both of them must be present for it to work. You may need to create DCIM if it doesn't already exist, and in that case you should start nnnn from 0001. The JPG files are the fullsize version, while the THM files are the thumbnail, and are 75x75 pixels in size. I wrote a script to do this, but there's a better documented one over here(-link no longer work).
你也可以在模拟器中通过点击并按住图片来添加safari中的照片。如果您将图像(或任何其他文件,如PDF)拖到模拟器,它将立即打开Safari并显示图像,因此这是一种非常简单的获取图像的方法。
从Xcode 6开始,你可以使用命令行工具xcrun simctl。
用法非常简单;要将照片添加到当前运行的模拟器中,您可以使用引导占位符。
xcrun simctl addmedia booted ./MyFile.jpg
要将它添加到任何其他模拟器,您可以使用它的设备id,可以通过运行xcrun simctl list找到它。
xcrun simctl addmedia E201E636-CE6C-11E5-AB30-625662870761 ./MyFile.jpg
如果你不能拖放你的文件,因为你遇到错误:
一个或多个媒体项导入失败::操作无法完成。(PHPhotosErrorDomain错误-1.)
将文件移动到Documents文件夹中,然后将它们拖到模拟器中。这将触发模拟器请求访问文件的权限。将它们放在下载文件夹中则不会。
在iOS 8.0中,我们添加了将图像拖放到iOS模拟器中的功能。您可以将一堆图像拖到窗口中,它们应该被导入到该模拟设备的照片卷轴中。您还可以使用simctl命令行工具完成此操作。xrun simctl addphoto
推荐文章
- 如何删除默认的导航栏空间在SwiftUI导航视图
- Ios模拟器:如何关闭应用程序
- 如何在iOS中使用Swift编程segue
- Swift -整数转换为小时/分钟/秒
- Swift:声明一个空字典
- 在成功提交我的应用程序后,“太多符号文件”
- 首先添加一个UIView,甚至是导航栏
- 我如何改变UIButton标题颜色?
- 在Swift中如何调用GCD主线程上的参数方法?
- NSLayoutConstraints是可动画的吗?
- iOS -构建失败,CocoaPods无法找到头文件
- Xcode 4挂在“附加到(应用程序名称)”
- CFNetwork SSLHandshake iOS 9失败
- 请求失败:不可接受的内容类型:文本/html使用AFNetworking 2.0
- 缺少推荐的图标文件-该包不包含iPhone / iPod Touch的应用程序图标,像素为“120x120”,png格式