2014-03-03 19 views
0
- (void)checkSelected:(NSMutableArray *)dataUser 
{ 
    NSNumber * number = [[NSUserDefaults standardUserDefaults]objectForKey:@"treatment"]; 

    for (NSInteger i = 0; i < dataUser.count; i++) 
    { 
     Treatment *treatment = (Treatment *)[dataUser objectAtIndex:i]; 
     if ([treatment.treatment_id isEqualToNumber:number]) 
     { 
      NSIndexPath *indexpath = nil; 
      //indexpath.row = i; 
      DLog(@"index path:%d",indexpath.row); 
      TreatementUserCell *cell = (TreatementUserCell*) [self.treatementUserTable cellForRowAtIndexPath:indexpath]; 
      if (cell.accessoryType == UITableViewCellAccessoryCheckmark) { 
       cell.accessoryType = UITableViewCellAccessoryNone; 
       UIImageView *image= [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"pick.png"]]; 
       cell.accessoryView = image; 

      } 

      break; 
     } 
    } 
} 

我想設置indexPath.row = i,但indexPath是隻讀的。我如何設置它?如何設置indexpath.row = i

+0

分配價值可能不明白你在說什麼,請你安排的代碼。 –

+0

像其他不可變類一樣,您需要使用您需要的值創建一個新實例。 – rmaddy

回答

0

閱讀NSIndexPath文檔以發現方法indexPathForRow:inSection:

+0

更準確地說,它是'NSIndexPath'的'UIKit'類別, – rmaddy

+0

@rmaddy,但NSIndexPath類doc指出它。我檢查了。 – matt

+0

是的,但可能並不明顯,您需要在「概覽」部分末尾的註釋末尾單擊該鏈接,才能找到「NSIndexPath」文檔的其他部分,以便找到您所需的內容。至少不適合新手。 – rmaddy

0

NSIndexPath包含RowsSections,試試這個代碼爲NSIndexPath

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:i inSection: section];