Ios 尝试检索图像时出现NSInvalidArgumentException

Ios 尝试检索图像时出现NSInvalidArgumentException,ios,swift,uitableview,parse-platform,Ios,Swift,Uitableview,Parse Platform,我在另一个地方使用“正常工作”代码时出错: [Error]: Caught "NSInvalidArgumentException" with reason "*** -[_NSPlaceholderData initWithContentsOfFile:options:error:]: nil file argument" 我声明了一个数组组:[[AnyObject]] 在我的UITableView中的cellforrowatinexpath方法中,我基于一个数组启动以下查询,该数组是gro

我在另一个地方使用“正常工作”代码时出错:

[Error]: Caught "NSInvalidArgumentException" with reason "*** -[_NSPlaceholderData
initWithContentsOfFile:options:error:]: nil file argument"
我声明了一个数组
组:[[AnyObject]]
在我的
UITableView
中的
cellforrowatinexpath
方法中,我基于一个数组启动以下查询,该数组是group=>
group[indexPath.row]
的一个元素

我可以毫无问题地获取必要的数据,但是当我尝试使用我的
getDataInBackgroundithBlock()
方法时,它会抛出上面的错误

    var memberPhotoImages:[UIImage] = [UIImage]()

    let buttonImageQuery = PFUser.query()
    buttonImageQuery?.whereKey("objectId", containedIn: group[indexPath.row])
    buttonImageQuery?.findObjectsInBackgroundWithBlock({ (results, error) -> Void in
        if error != nil {
        print(error)
        } else {
            self.memberPhotosFiles.removeAll()
            if let results = results {
                for result in results {

                let buttonPicture = result["firstImage"] as! PFFile
                self.memberPhotosFiles.append(buttonPicture)

                buttonPicture.getDataInBackgroundWithBlock {
                        (imageData: NSData?, error: NSError?) -> Void in

                        if error != nil {

                            //...

                        } else {
                            if let data = imageData {

                                print("success!")

                            }}}}}}})

    return cell
}
有什么办法解决这个问题吗?到目前为止,我试了很多打字,但一定是别的什么东西


编辑:它会打印“Success!”,但也会打印错误消息。

我不得不从错误中猜测,似乎您正在尝试访问设备上不存在的文件-[\u NSPlaceholderData initWithContentsOfFile:options:error:]:nil file argument问题可能是您正在从模拟器可以访问的位置(可能在iOS模拟器的文件中,这些文件在应用程序支持中)访问某些内容,但设备无法访问。检查您的代码是否存在任何硬编码路径,这些路径可能会指向计算机上的某个位置,而不是访问设备的文件系统


这表明您的文件参数为零。大多数这种情况是由于模拟器和设备之间的文件路径不同造成的。检查有关加载文件的代码,并比较模拟器和设备之间的路径。

永远不要在
cellforrowatinexpath
中调用异步任务。执行
控制器
部分中的操作,然后更新
模型
,然后更新
视图
。查看MVC模式-好的,我会记住这一点:)。我的问题是:在我的第一个查询中,我得到了一个特定组(classname:group)的用户名。我将这些存储到我的数组组中。每个数组代表一个组。现在我的想法是使用indexPath.row在我的单元格中访问这些。有不同的方法吗?单元格表示MVC模式中的
视图。在
控制器
型号
中执行此操作。请阅读我链接到的网站上关于MVC的简短描述。