【发布时间】:2014-12-03 16:49:58
【问题描述】:
我想将 UICollectionView 滚动到底部,以便最后一项在视图中。我曾尝试使用 scrollToItemAtIndexPath 但它似乎没有工作。我希望在完成对 Parse.com 的查询后发生这种情况
谢谢
var query = PFQuery(className:"Chat")
// query.whereKey("user", equalTo:currentUser)
query.whereKey("rideId", equalTo:currentObjectId)
query.orderByDescending("createdAt")
query.includeKey("user")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]!, error: NSError!) -> Void in
if error == nil {
// The find succeeded.
NSLog("Successfully retrieved \(objects.count) scores.")
// Do something with the found objects
for object in objects {
NSLog("%@", object.objectId)
var testId = object.objectId
println(testId)
self.orderedIdArray.append(testId)
var message = object.objectForKey("message") as String
self.messageString = message
self.messageArray.append(self.messageString)
println(message)
var nameId = object.objectForKey("user") as PFUser
var username = nameId.username as String
self.nameString = username
self.namesArray.append(self.nameString)
println("username: \(username)")
self.collectionView?.reloadData()
}
} else {
// Log details of the failure
NSLog("Error: %@ %@", error, error.userInfo!)
}
NSLog("Ordered: %@", self.orderedIdArray)
}
【问题讨论】:
-
您说
scrollToItemAtIndexPath“似乎不起作用”。它有什么作用? -
我已将它放在
self.collectionView?.reloadData()行下,但在该行之后它不会运行任何东西。 -
这就是我正在使用的。这是正确的吗?
let index = NSIndexPath(forItem:self.messageArray.count, inSection:0) self.collectionView?.scrollToItemAtIndexPath(index, atScrollPosition: UICollectionViewScrollPosition.Bottom, animated: true) -
我的意思是我应该把代码放在
...所在的位置?