选择不同的行时,didSelectRowAtIndexPath选择

时间:2011-11-16 19:39:49

标签: iphone uitableview

所以我以前曾经多次使用过UITableView但是我遇到了一些我正在努力缩小范围的异常行为。在UIPopoverController中,我提出了这个UITableView。该应用程序适用于iPad。 UIViewController的.xib是一个iPhone。顾问这样做了。我不确定他们是否这样做,因为它比典型的ipad尺寸的.xib更小。

我的viewcontroller子类从.h文件实现UITableViewDelegate和UITableViewDataSource。

@property (nonatomic, retain) IBOutlet UITableView *TargetTableView;

我检查了.xib,UITableView的文件所有者是我的sublcass,数据源和委托也在IB中连接。

- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath {

    if (tableView == _targetTableView) {
        NSUInteger row = [indexPath row];
        NSLog(@"row: %i", row);
    }

我第一次看到,当我选择tableView中的第一行时,我没有记录到控制台。突出显示的是第一行。然后当我选择下一行时,我将“row:0”记录到控制台。它似乎只在我选择下一行后记录。我不知道这是否是ppl之前见过的东西,我错过了一些愚蠢的东西,因为我在没有问题之前已经制作了其他的UITableViews。感谢。

2 个答案:

答案 0 :(得分:2)

您已实施didDeselectRowAtIndexPath而不是didSelectRowAtIndexPath

答案 1 :(得分:0)

您应该检查并记录indexPath.section以及行。