如何检索UITableView
的上一个单元格(//send http request
function sendRequest(url) {
var newRequest = new XMLHttpRequest();
newRequest.onreadystatechange = function() {
if(newRequest.readyState == 4) {
if(newRequest.status == 200) {
console.log("loaded: " + url);
} else {
console.log("Failed to load: " + url);
}
}
}
newRequest.open("HEAD", url);
newRequest.send();
}
//send request for each url in array
for(var i = 0; i < urlArray.length; i++) {
//get document id and append to link
var address = "https://www.adsa.co.uk/library.dr/docs.aspx?id=" +
urlArray[i];
//console.log(address + "\n");
sendRequest(address);
}
内部)的计数,包括其他部分?
答案 0 :(得分:0)
使用表格视图的visibleCells
方法获取屏幕上的单元格数组。
然后使用indexPathForCell
将这些单元格映射到indexPath值。最后,向后遍历indexPaths数组,查找当前的indexPath。找到后,靠近数组开头的所有indexPath都代表在cellForRowAtIndexPath:
实际上,最好使用表格视图方法indexPathsForVisibleRows
。这将一步为您提供indexPaths。
如果你想为每个单元格提供单个数字索引,那么它将是人为的。单元格由indexPath编号,其中节号是最重要的值,然后单元格按节中的行排序。
如果你想要一个数字索引,你可以这样做:
let maxRowsPerSection = 100 //Change to reflect the actual max rows/section
let indexPaths = tableView.indexPathsForVisibleRows
let indexValues = indexPaths.map{$0.section * maxRowsPerSection + $0.row}
通过对maxRowsPerSection使用值100,您将获得最后2位代表行号的数字,而数百位数字和上方代表节号。如果你可能有&gt;您需要增加maxRowsPerSection
的值的部分中的100行。
答案 1 :(得分:0)
希望能帮助任何人找到答案:
var partialSections = 0;
var i = 0
for (i = 0; i < indexPath.section; i += 1) {
let rowsInSection = self.tableView(self.tableView, numberOfRowsInSection: i)
partialSections += rowsInSection;
}
let currentRow = partialSections + indexPath.row;
print(currentRow)