我有一個應用程序,其中用戶單擊TableViewController中的一行然後在另一個視圖控制器上顯示一些信息。現在信息只顯示objectAtIndex:0。我需要它,以便我可以獲取用戶選擇的行的對象。獲取所選行的索引
TableViewController:
static NSString *cellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier forIndexPath:indexPath];
NSManagedObjectModel *playerModel = [self.playersArray objectAtIndex:indexPath.row];
[cell.textLabel setText:[NSString stringWithFormat:@"%@ vs %@", [playerModel valueForKey:@"player1"], [playerModel valueForKey: @"player2"]]];
[cell.detailTextLabel setText:[playerModel valueForKey:@"date"]];
return cell;
的ViewController:
NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc]initWithEntityName:@"Match"];
self.playersArray = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];
NSManagedObjectModel *playerModel = [self.playersArray objectAtIndex: 0];
UILabel *location = [[UILabel alloc]initWithFrame:CGRectMake(20, 130, 300, 20)];
[location setText:[NSString stringWithFormat:@"Games: %@", [playerModel valueForKey:@"location"]]];
[self.view addSubview:location];
的TableViewController工作正常,但正如我上面所說,只有objectAtIndex:0以上的節目。
[self.tableView indexPathForSelectedRow] .row – Alex
thx但我怎麼能作爲一個整數。我試過:NSInteger * row = [self.tableView indexPathForSelectedRow] .row,但它告訴我,它有問題的NSInteger –
NSInteger row = [self.tableView indexPathForSelectedRow] .row; // NSInteger * row是一個指向整數的指針,不是整數 – ekscrypto