作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
目前我有一个 UICollectionvView,它从相应的 UITableView 单元格中获取信息,如下所示:
//TableView
var knownForArray: [UIImage] = []
var knownForExtendedArray: [CastExtendedData] = []
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = peopleImagesTableView.dequeueReusableCell(withIdentifier: knownForCellIdentifier) as! KnownForCell
print("Known for array count at cell:\(self.knownForArray.count)")
cell.imageDelegete = self
cell.knownForExtendedArray = self.knownForExtendedArray
cell.knownForArray = self.knownForArray
self.peopleImagesTableView.rowHeight = 150
return cell
}
//CollectionView
var knownForArray: [UIImage] = []
var knownForExtendedArray: [CastExtendedData] = []
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
print("Known for array count collectionview numberOfRowsInSection:\(self.knownForArray.count)")
return knownForArray.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = knownForCollectionView.dequeueReusableCell(withReuseIdentifier: knownForReuseIdentifier, for: indexPath) as! KnownForCollectionViewCell
if let knownPoster = knownForExtendedArray[indexPath.row].poster{
DispatchQueue.main.async {
print("collectionview knownForarray: \(self.knownForArray.count)")
cell.knownForImages.sd_setImage(with: URL(string: "\(baseImageURL)\(knownPoster)"))
}
}
return cell
}
通过添加一个 print
语句,我能够知道,一旦第一个项目被添加到 tableview 的 knownForArray
中。它触发 collectionview 的 numberOfItemsInSection
,这将部分中的项目总数限制为 1。tableview 的 knownForArray
可以有 50 多个项目,在它完成检索所有 JSON 数据之后。
最佳答案
每当网络调用完成时,您都需要调用 collectionView.reloadData()
。
关于ios - `numberOfItemsInSection` 仅在添加数组中的第一项后调用,将项目限制为只有一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42936374/
我在一个 fragment 中创建了一个自定义 ListView ,并将它与另一个 Activity 连接起来,以便在单击时显示列表中每个项目的详细信息。该 Activity 正在加载并显示标题、描述
当我打开搜索到的项目时,它打开的是 ListView 的第一项而不是搜索到的项目。即使成功搜索并找到项目。 举个例子: 如果我搜索 Arrow,我可以获得 Arrow,但是当单击 Arrow 时,它会
我是一名优秀的程序员,十分优秀!