我有一个var merge = require('merge-stream');
// Old bower behavior would be "*" in before and "" in after but you don't want that much.
var webpackages = {
"requirejs": {"bin/*": "bin/" }
// ...
}
gulp.task("dist_lib", function() {
var streams=[];
for (var package in webpackages)
for (var item in webpackages[package])
streams.push(gulp.src("node_modules/" + package + "/" + item)
.pipe(gulp.dest("lib/" + package + "/" + webpackage[package][item])));
}
,它会在应用开始时显示20个项目,然后当滚动到底部时,会从服务器中提取另外20个项目并显示到tableView
首先,我打电话给我,以便在我的TableView
中显示第一个20项,这是正常的
tableview
这是TableView函数,它是标准的
var posts = [Item]()
//here is the latest 20 posts
func fetchPost(itemId : Int){
Alamofire.request(MY_URL!, method: .get).responseJSON{
response in
switch response.result{
case .success(let result):
//here parse the JSON.
let json = JSON(result)
guard let feedArr = json["item"].array else{
return
}
for item in feedArr {
if let item = item.dictionary,let feed = Item.init(dict: item){
self.posts.append(feed)
}
}
self.myTableView.reloadData()
break
case .failure(let error):
print(error)
}
}
}
我在func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.posts.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MyTableCell", for: indexPath) as! MyTableCellClass
cell.posts = self.posts[indexPath.row]
cell.delegate = self
return cell
}
的最后一项获得Id
,并使用顶部的TableView
方法获取下一个20项
fetchPost()
但现在当我到达TableView的底部时,让func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if indexPath.row + 1 == posts.count {
//here is the last item of the feed
let lastPostId = self.posts[indexPath.row].postId
self.fetchPost(postId: lastPostId)
}
}
有效,并从服务器获取响应,但应用程序崩溃并继续发出此错误:
线程1:发出信号SIGABRT< - AppDelagate类中的这个
libc ++ abi.dylib:以未捕获的类型异常终止 NSException(lldb)<< - 在控制台中
除此之外,当我继续向下滚动,然后我再次向上滚动时,同样的错误也出现了,并且TableViewCell中的所有元素都移动混乱(意味着与我在故事板中组织的不一样)
到目前为止我做了什么
检查lastPostId
和IBOutlet
的关联是否与IBAction
类相关联..已选中,已全部连接
所以我的问题是
1)TableView中出现此错误的原因是什么,我知道这是一个非常普遍的错误,但是如何通过xcode中的这些小信息解决这个问题呢?我不知道哪一行代码导致了这个问题。
2)在同一MyTableCell
中显示具有相同结构的下一个20项的正确方法是什么?
请帮忙。谢谢你