我有一个朋友系统,收集视图中的所有朋友。目前我可以单击该单元格,该单元格上的信息将转移到新的视图控制器。从该视图控制器有一个按钮可以转到表格视图。我想从Pointer类中检索解析中的所有对象,其中用户ID与您单击该单元格的用户相匹配。我将用户名传递给页面。以下是仅为登录用户获取对象的代码。我该如何为其他用户这样做?
func getSongs(){
let retrieve = PFQuery(className: "Pointer")
retrieve.findObjectsInBackgroundWithBlock({
(objects: [AnyObject]?, error: NSError?) -> Void in
var object = objects as! [PFObject]
if(error == nil){
//self.titleofsong = []
//self.artist = []
for i in 0...object.count-1{
//self.ret.append(object[i].valueForKey("user") as! String)
if (object[i].valueForKey("user")!.objectId == currentUserID){
//print(object[i].valueForKey("title") as! String)
self.titleofsong.append(object[i].valueForKey("title") as! String)
self.artist.append(object[i].valueForKey("artist") as! String)
print("friends song \(self.titleofsong)")
print("friends artist \(self.artist)")
}
}
}
})
}
以下是将朋友信息传递给下一个视图控制器的代码。
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell: friendcellView = collectionView.dequeueReusableCellWithReuseIdentifier("friendcell", forIndexPath: indexPath) as! friendcellView
cell.friendname.text = arrayOfFriendsNames[indexPath.item]
cell.friendpic.image = arrayOfFriends[indexPath.item]
cell.friendpic.layer.cornerRadius = cell.friendpic.frame.size.width/2;
cell.friendpic.clipsToBounds = true
return cell
}
func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
print("Cell \(indexPath.item) selected")
print(arrayOfFriendsNames[indexPath.item])
self.dicSelected = ["friendname" : arrayOfFriendsNames[indexPath.item], "friendimage" : arrayOfFriends[indexPath.item]]
print("didSelected before prepareForSegue \(self.dicSelected)")
self.selectedData.text = arrayOfFriendsNames[indexPath.item] as? String
self.selectedData.image = arrayOfFriends[indexPath.item] as? UIImage
self.performSegueWithIdentifier("friendaccess", sender: selectedData)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "friendaccess"){
let nextViewOBJ = segue.destinationViewController as! FriendProfile
nextViewOBJ.dataModel = self.selectedData;
}
}
答案 0 :(得分:0)
首先,您需要准备模型类并将所有朋友列表详细信息存储在该类中,然后将该模型类对象存储到集合视图数组中。
之后从数组中检索对象并在集合视图中显示。
一旦完成。现在,如果您想在用户选择单元格时转到另一个视图控制器,那么获取索引路径,并在此基础上从集合视图中获取模型类对象。
现在在另一个视图控制器上传递此对象并执行任何操作。
这件事成功了......做吧。