如何将数据从Parse传递到UITableView?

时间:2015-05-18 10:48:30

标签: ios swift parse-platform

目前我有Parse数据,包括图片,标题和价格。

我想获取数据并将其传递给UITableView,我该怎么做?

我是否查询所有数据并将其设置为每个UILabel?

目前我有4个标签,1个ImageView和3个TextLabel

继承我的UITableViewController的代码

class MyTableViewController: UITableViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        queryProducts()

    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    // MARK: - Table view data source


    func queryProducts() {

        var query = PFQuery(className:"product")
        query.whereKey("playerName", equalTo:"Sean Plott")
        query.findObjectsInBackgroundWithBlock {
            (objects: [AnyObject]?, error: NSError?) -> Void in

            if error == nil {
                // The find succeeded.
                println("Successfully retrieved \(objects!.count) scores.")
                // Do something with the found objects
                if let objects = objects as? [PFObject] {
                    for object in objects {
                        // What should i put here?
                    }
                }
            } else {
                // Log details of the failure
                println("Error: \(error!) \(error!.userInfo!)")
            }
        }


    }

}

以下是tableView故事板的屏幕截图

enter image description here

再次如何将所有Parse数据传递给tableView?

2 个答案:

答案 0 :(得分:0)

我猜您正在使用Parse.com进行后端数据服务。 在这种情况下,很容易处理数据, 只是从PFQueryTableViewController扩展你的TableViewController类

class TableViewController: PFQueryTableViewController {
 ////
}

然后按照以下链接中的说明进行操作

SWIFT + PARSE数据管理: LINK

答案 1 :(得分:0)

您不会将数据传递给UITableView。表格视图要求将数据提供给委托,应将其设置为View Controller。这是一个IoC(控制反转),因为你没有向控件提供数据:你只需要设置哪个对象(代理人)负责将数据提供给你的TableView。

当您从UITableViewController延伸时,您的表格视图可能已经设置了委托 dataSource 属性。要检查它,右键单击Interface Builder中的表视图:您应该看到已经设置了这两个出口。

然后你需要:

  • 创建一个属性来存储查询结果:

    var objects: [PFObject]?

  • 覆盖UITableView DataSource Protocol

    • - numberOfSectionsInTableView:Reference。如果您只有一个部分,则返回1.

    • - tableView:numberOfRowsInSection:。从Parse获得的对象数量。 self.objects.count

    • - tableView:cellForRowAtIndexPath::您需要创建一个单元格并填充标签

  • 此外,您希望在新数据进入时重新加载TableView,请致电reloadData

相关问题