什么(self.nsmutablearray)[indexPath.row]意味着什么?

时间:2014-09-30 22:37:50

标签: ios objective-c uitableview

我正在开发一个用于学习目的的联系人列表,这个问题来自于学习。

这是问题:我正在为我的TableView配置一个单元格,我的一个朋友说我应该使用(self.nsmutablearray)[indexPath.row],但是我不明白为什么我应该在[indexPath.row]之前使用(self.nsmutablearray)。我知道这是一个愚蠢的问题,但我无法理解编程范式究竟是如何运作的。 这是代码(Contact是NSObject,contactList是NSMutablArray):

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ContactCell" forIndexPath:indexPath];
    Contact *contact = (self.contactList)[indexPath.row];

    cell.textLabel.text = contato.name;

    return cell;
}

1 个答案:

答案 0 :(得分:1)

这是索引下标。

self.contactList表示Contact个对象的数组。您需要在表中的某一行获取联系人,以便可以使用数据填充单元格。 indexPath表示表格中的部分和行,indexPath.row仅代表行。因此,您可以编写self.contactList[indexPath.row]来从数组中检索该索引处的元素。

或者,你可以写[self.contactList objectAtIndex:indexPath.row]