我用這個方法得到indexPath當我觸摸到的TableViewIOS的indexPath總是返回零
-(NSIndexPath *)tableView:(UITableView *)tableView willDeselectRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row==0) {
return nil;
}else{
return indexPath;
}
}
而且我想要一個的NSString轉移到第二的viewController,讓我這樣的代碼
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
NSIndexPath *indexPath = [self.tableView indexPathForCell:sender];
NSString *name =self.nameArray[indexPath.row];
[segue.destinationViewController navigationItem].title = name;
id theSegue = segue.destinationViewController;
[theSegue setValue:name forKey:@"showName"];
}
但indexPath始終爲零,並且-tableView:tableView willDeselectRowAtIndexPath indexPath
可能不會執行。
所以當我觸摸單元格時,如何才能獲得正確的indexPath? 謝謝。
表視圖從0開始,行你確定要忽略第一行? – Nick
是的,第一個只是一個例子。 – Shucheng
您需要使用tableview委託didSelectRowAtIndextPath來獲取選定的行信息。別忘了設置你的tableview委託。 – Nick