在用于创建事件的应用程序中,每个集合视图单元格都有一个按钮数组,其背景显示参加所述事件的用户的概要图片(索引路径处的对象)。这一切都很好,它们显示正确,但我想这样做,以便当用户选择某个按钮时,它会推送到配置文件所属的用户的配置文件视图控制器。
这是我到目前为止的代码......
在主VC的cellForRowAtIndexPath方法中...就像我说的那样完美显示。
//gets profile pictures for image view array on back of cell
if let attendeeRelation : PFRelation = event?.relationForKey("eventAttendees") {
attendeeRelation.query()?.findObjectsInBackgroundWithBlock({ (objects, error) -> Void in
if ((objects) != nil) {
self.tempArray = objects as? [PFUser]
for var index = 0; index < objects!.count; ++index {
let buttonView = cell.buttonsArray[index]
let usr : PFUser = (self.tempArray?[index] as PFUser?)!
usr.fetchIfNeededInBackgroundWithBlock({ (object, error) -> Void in
if let picture = object!.objectForKey("profilePicture") as? PFFile {
picture.getDataInBackgroundWithBlock({ (data, error) -> Void in
buttonView.setBackgroundImage(UIImage(data: data!), forState: UIControlState.Normal)
})
}
})
}
}
else {
print(error)
}
})
}
准备segue方法,我遇到了麻烦...
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "pushToProfile") {
//get index of button here then push to profile VC with correct user
let profileVC = segue.destinationViewController as! ProfileViewController
}
}
我应该只是将按钮子类化并给它一个用户属性并从那里开始?我觉得这可能是最简单的方法。有人有建议吗?谢谢你,非常感谢。
答案 0 :(得分:0)
我做到了!
对按钮进行子类化并为其提供“用户”属性就可以了。