单击tableCell后加载子视图

时间:2011-08-19 13:41:45

标签: objective-c uitableview subview didselectrowatindexpath

所以我试图在我当前的Xcode项目中添加一个表视图,无论何时单击一个单元格,无论它是哪一个,都会在窗口中添加一个新的子视图。我将使用全局变量和didSelectRowAtIndexPath来传递数据。

就目前而言,我在屏幕上绘制了表格视图,其中包含正确的数据。我想要发生的是当我点击时,添加了一个新的子视图,但我似乎无法使其工作。

我已经尝试在didSelectRowAtIndexPath方法本身中添加“addSubview”,这不起作用,我尝试声明一个单独的方法,加载一个名为'loadDetails'的子视图,然后在选择一个单元格时用[self loadDetails]调用它但它在电话会议后想要一个id,我不知道该传递什么。

我在项目的其他地方使用过该行:

[rightButton addTarget:self
                action:@selector(showDetails:)
      forControlEvents:UIControlEventTouchUpInside];

但是除非我能以某种方式在单元格上添加一个新按钮,否则我无法看到如何将其改编为tableCell?我真的不知道。

如果有人对如何解决这个问题有任何其他想法,那就太棒了。

谢谢,

马特

编辑:

问题现在解决了,是一个非常愚蠢的错误,我忘了将我正在移动的xib上的视图链接到我头文件中以编程方式创建的视图

1 个答案:

答案 0 :(得分:0)

尝试使用presentModalViewController来显示您的视图,然后从modalViewController中将其关闭:

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

DetailView *detailView = [[DetailView alloc] initWithNibName:@"DetailView" bundle:nil];

[self presentModalViewController:detailView animated:YES];

}