UITableView中未提供所有解析对象

时间:2015-08-06 03:53:07

标签: ios swift uitableview parse-platform

我正在从解析中的关系中检索对象。我想要的对象被成功检索并打印在输出框中,但是当我运行应用程序时,我的UITable只显示六个对象中的一个。关于如何将所有这些提升到我的观点的任何建议?我将不胜感激。

 class MyGroupsHomePage: UITableViewController {

let cellidentifer = "MyGroupsCell"


var mygroupsdata: NSMutableArray = NSMutableArray()

func findcurrentuserobjects () {
    var currentuser = PFUser.query()
    currentuser!.whereKey("username", equalTo: PFUser.currentUser()!.username!)
    currentuser!.findObjectsInBackgroundWithBlock { (object:[AnyObject]?, error: NSError?) -> Void in
        if error == nil && object != nil {

            if let object = object as? [PFObject] {

                for objects in object {

                   self.mygroupsdata.addObject(objects)
                }

            }
        }

        self.tableView.reloadData()

    }


}



override func viewDidLoad() {
    super.viewDidLoad()

    findcurrentuserobjects()



}

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return self.mygroupsdata.count
}

var groupnamearray: NSMutableArray = NSMutableArray()
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(cellidentifer, forIndexPath: indexPath) as! UITableViewCell
    let mygroupdata: PFObject = self.mygroupsdata.objectAtIndex(indexPath.row) as! PFObject
    let relation = mygroupdata.relationForKey("UserGroups")
    let query = relation.query()
    query?.findObjectsInBackgroundWithBlock({ (objet:[AnyObject]?, erro: NSError?) -> Void in

        if erro == nil && objet != nil {

            if let objet = objet as? [PFObject] {

                for objets in objet {
                    println(objets.objectForKey("GroupName")!)
                    cell.textLabel?.text = objets.objectForKey("GroupName")! as? String

                }

            }

        } else {

            println("Error, could not retrieve user groups \(erro)")

        }



    })


    return cell
}








 }

1 个答案:

答案 0 :(得分:1)

正如Paulw11所述,这就是问题所在:

<uses-permission android:name="com.android.vending.BILLING" />

<uses-permission android:name="android.permission.BILLING" />

您继续在同一个textLabel中更新相同的属性“text”,我假设它是UITableViewCell子类中的IBOutlet,用于定义单元格的外观。如果不了解您希望如何布置此文本,则很难提出答案。一种快速而肮脏的方式可能(我还没有测试过):

for objets in objet {
   println(objets.objectForKey("GroupName")!)
   cell.textLabel?.text = objets.objectForKey("GroupName")! as? String
}

但是,根据您想要实现的目标,您可能需要将子视图添加到UITableViewCell子类(在Storyboard中的单元原型上或以编程方式)。