ユーザーがボトムをヒットしたときにテーブルビューに新しいアイテムを追加しようとしました。ここでテーブルビューの新しいアイテムをスクロールで下に移動しようとしました
私が試したものです。このように起動FUNC
/* Scrolling */
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let height = scrollView.frame.size.height
let contentYoffset = scrollView.contentOffset.y
let distanceFromBottom = scrollView.contentSize.height - contentYoffset
if distanceFromBottom < height {
self.viewModel.loadMoreCharacters()
}
}
LoadMoreCharacters
:何らかの理由で
func loadMoreCharacters(){
guard isLoading.value == false else {
print("Already try to load items")
return
}
isLoading.value = true
print ("start load")
isLoading.value = true
ApiManager.shared.getCharacters(offset: offset, limit: limit, orderBy: OrderBy.name) { [unowned self] (success, charIds) in
if (success){
self.addItemsWithNewCharactersIds(charIds: charIds ?? [])
self.offset += 10
self.isLoading.value = false
print("have new")
} else {
self.isLoading.value = false
self.delegate?.finishLoadingWithError(error: nil)
}
}
、そのコードは2回実行。私はそれが1回(私は要求を意味する)を実行します。