Iphone UITableview-tableView:DidDeceloseRowatingIndexPath:方法工作不正常?
在我的应用程序中,我使用UITableview。在该委托方法中,如果我执行了任何操作,则不会选择行 例如,我在tableview中有3行 如果选择1行(indexPath.row==0),则不会发生任何事情 如果再次选择2行(indexPath.row==1),现在它正在登录控制台indexPath.row==0,这是以前的值 如果再次选择1行,则其日志记录将显示其先前的值indexath.row=1 为什么会这样Iphone UITableview-tableView:DidDeceloseRowatingIndexPath:方法工作不正常?,iphone,uitableview,Iphone,Uitableview,在我的应用程序中,我使用UITableview。在该委托方法中,如果我执行了任何操作,则不会选择行 例如,我在tableview中有3行 如果选择1行(indexPath.row==0),则不会发生任何事情 如果再次选择2行(indexPath.row==1),现在它正在登录控制台indexPath.row==0,这是以前的值 如果再次选择1行,则其日志记录将显示其先前的值indexath.row=1 为什么会这样 - (void)tableView:(UITableView *)tableVi
- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{
CustomerInfoViewController *customer = [[EquipmentViewController alloc]initWithNibName:@"CustomerInfoViewController" bundle:nil];
EquipmentViewController *equpment = [[EquipmentViewController alloc]initWithNibName:@"EquipmentViewController" bundle:nil];
ContactsViewController *contacts = [[ContactsViewController alloc]initWithNibName:@"ContactsViewController" bundle:nil];
if(indexPath.row == 0)
{
NSLog(@"one %d",indexPath.row);
[detailsView addSubview:customer.view];
}
if(indexPath.row == 1)
{
NSLog(@"two %d",indexPath.row);
[detailsView addSubview:equpment.view];
}
if(indexPath.row == 2)
{
NSLog(@"three%d",indexPath.row);
[detailsView addSubview:contacts.view];
}
}
请任何人帮帮我
提前感谢。您已经实现了
取消Rowatindexpath
方法,而不是像Vladimir所说的那样执行了取消Rowatindexpath
。使用didSelectRowAtIndexPath显示某些实际代码可能在逻辑上是正确的。可能将初始化拉入if语句中。这可能与这些章节有关吗?可能执行NSLog(@“%d%d”,indexath.row,indexPath.section)
查看函数是否没有被调用,或者您的代码是否完全错误。您必须清除一些选项才能更好地理解问题。didselectrowatinexpath:
过去默认情况下会添加到UITableViewController类中,但现在它被prepareforsgue:
取代,这让人恼火。这也意味着很多人没有注意到方法名称中微小的De
,而是使用了错误的方法。