2012-09-28 49 views
0

获得了一个tableView,其中包含一些玩家对象,在每场比赛结束后按最佳playerTime对ASC进行排序。NSMutableArray:如何在排序后将排序值(int)添加到数组的对象?

现在我想添加一个值(int)来显示玩家在玩家列表(tableview)中的位置,这将会反映在tableView中的玩家自定义单元格中。定制单元格已经与动态数据一起工作了,只需要“placement”int。

如何处理数组来执行此操作?必须在列表(NSArray)按最佳playerTime排序后完成。

  • 我想,某种迭代步骤一和二可能(如if-then语句)?
  • 也许有一个聪明的NSArray属性为这个特定的需要?

任何提示或建议?谢谢。

+0

value(int)显示玩家在什么基础上的位置 –

+0

由于你没有共享任何代码,所以我建议你找的是'NSSortDescriptor'这可能会帮助你。 –

+0

所以你要做的是让每个单元格在桌面上显示其位置,正确(第一个单元格显示顶级球员,所以他的位置是'1')? – Alladinian

回答

0

只显示该行的价值到您的自定义元素的标签:

- (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 
    //... 
    myCustomCell.positionLabel.text = [NSString stringWithFormat:@"%i", (indexPath.row + 1)]; 
    //... 
} 

现在,如果你有一个球员的对象,并希望取回您的排序阵列的位置,你只是这样做:

int playerPosition = [mySortedArray indexOfObject:playerObject] + 1; 
+0

感谢阿拉丁尼亚人,这是一个伟大而简单的方式来做到这一点,我认为。今天晚些时候会试一试(然后检查正确的答案)。 – Mac

+0

更新:我刚加入; 'cell.cellPlayerStarIcon.text = [NSString stringWithFormat:@“%i”,(indexPath.row +1)];'方法cellForrowAtIndexPath,它的工作方式类似于sharm。再次感谢您的及时响应! – Mac