ios - 从 Parse Server 接收字符串、数字和图像并将它们添加到本地数组

标签 ios arrays swift uitableview parse-platform

我是编码新手,我正在尝试从解析服务器定位、检索值并将值附加到本地数组。通过查询,我能够成功检索所有信息并将其附加到我在 ViewDidLoad() 中的数组在我的 for in 循环中。但是,当我在运行查询 & for in 循环后打印数组的项目时,我的数组都包含 nil,而不是之前添加的值。

  override func viewDidLoad() {
   query.whereKey("Bar", equalTo: BarText!)
    query.findObjectsInBackground(block: { (objects,error) -> Void in
        if error == nil {
        if let returnedobjects = objects {
            for object in returnedobjects {
                let postImageFile = object["PostImage"] as? PFFileObject

                postImageFile?.getDataInBackground(block: { (imageData: Data?, error: Error?) in
                    if error == nil {
                        self.PickedBarImagePostArray.append(UIImage(data: imageData!)!)
                    } else {
                        print("nothing")
                    }
                })
                let userProfilePicFile = object["ProfileImage"] as?
                PFFileObject
                userProfilePicFile?.getDataInBackground(block: { (imageData: Data?, error: Error?) in
                    if error == nil {
                        self.PickedBarPostProfileImageArray.append(UIImage(data: imageData!)!)
                    } else {
                        print("nothing")
                    }
                })

                self.PickedBarPostLikesArray.append((object["Likes"] as? Int)!)
                self.PickedBarPostUsernameArray.append((object["Username"] as? String)!)
                self.PickedBarPostTimeArray.append((object["UserTime"] as? String)!)
                self.PickedBarChekcedInArray.append((object["Checked"]as? String)!)
                self.PickedBarContentPostArray.append((object["ContentPost"] as? String)!)
                self.PickedBarPostArray.append((object["PostType"] as? String)!)
                print(self.PickedBarPostLikesArray)
                print(self.PickedBarPostUsernameArray)
                print(self.PickedBarPostTimeArray)
                print(self.PickedBarChekcedInArray)
                print(self.PickedBarContentPostArray)
                print(self.PickedBarPostArray)
            }
        }
    }
})
    print(self.PickedBarPostLikesArray)
    print(self.PickedBarPostUsernameArray)
    print(self.PickedBarPostTimeArray)
    print(self.PickedBarChekcedInArray)
    print(self.PickedBarContentPostArray)
    print(self.PickedBarPostArray)
    self.BarSelectedTableView.reloadData()

}

我在控制台中得到了这个:

[]

[]

[]

[]

[]

[10]

[“麦哲伦”]

[“下午 5:59”]

["\"\""]

["\"\""]

This is my Parse Server

最佳答案

所以我通过创建一个名为“刷新”的按钮来让它工作。一切正常。但是,我想让信息在初始 View 时填充数组,而不是按下按钮。谁能解释为什么会这样?

关于ios - 从 Parse Server 接收字符串、数字和图像并将它们添加到本地数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58419781/

相关文章:

ios - 如何从 SKView 中删除场景?

ios - 来自 url 的 UIImage 需要很长时间才能快速加载

ios - 向下或向上滑动 MKMapView 指定数量的像素

ios - 秒表单圈计时器

iphone - 使用 mencoder、handbrake cli 或 ffmpeg 自动检测旋转并相应地旋转视频

arrays - MATLAB 2013a : sum + squeeze dimension inconsistencies

javascript - 方法未添加到原型(prototype)

c - int[ ][ ] 和 int** 有什么区别(菜鸟)

ios - 缩放时 Iphone/Ipad 崩溃

ios - 在没有 NSDataDetector 的情况下从 NSString 解析地址