从UITableView内部推送UIViewController

时间:2010-11-07 16:59:08

标签: iphone uitableview uiview pushviewcontroller addsubview

嘿所有, 我有一个分段控制器,它显示一个包含UITableView的框架(cgrectmake)UIview。

我使用addSubView来显示tableview,这很好。但是在didselect方法的tableview中,我想推送一个不同的viewcontroller。

但是当我这样做时它没有出现,它会注册触摸等。如果我添加了视图,它会显示,但我需要真正推动这个视图。所以要填充屏幕而不是新视图只显示在包含tableview的UIView中。

我通过推动tableview然后推送后续视图进行实验,并且最终视图显示完美,但我需要将tableview包含在屏幕上的框架中。

有任何建议吗?

迈克尔。

2 个答案:

答案 0 :(得分:0)

你能用一些代码澄清一下你尝试过的东西吗?您提到了关于推送tableview和后续视图的实验,但是没有推送视图,只有viewcontrollers。只是想确保这不是你想要做的。

你还提到它注册触摸......

如果设置正确,您的tableview将在其自己的viewController视图中。确保viewController类符合UITableViewDelegate。 (或者您决定为UITableView设置委托属性的任何类)

即。在myViewControllerClass.h中:

@interface myViewControllerClass <UITableViewDelegate>

作为UITableView委托的类还必须实现以下委托方法:

- (void)tableView:(UITableView *)inTableView didSelectRowAtIndexPath:(NSIndexPath *)inIndexPath

在tableview中选择一行时将调用此方法。这是您决定将另一个viewController推送到第一个viewController的视图。

答案 1 :(得分:0)

如果您将tableView添加为子视图,您是否记得将委托设置为与调用didSelectRowAtIndexPath相同的对象?

您还需要确保此对象为UITableViewDelegate