UIViewTableCell didSelectRowAtIndexPath正在调用但不推送视图控制器

时间:2010-06-09 08:49:01

标签: iphone ipad

所以我有一个带UITableView的UIViewController视图。 所以UIViewController类名是SelectionScreen。 UITableView类名是SelectionScreenTable。

照片: http://img717.imageshack.us/i/screenshot20100609atpm0.png/

我在SelectionScreen类中声明了一个UITableView * selectionTable并将其连接到SelectionScreen的xib文件

问题是,当我单击表中的一行时,它会保持选中状态突出显示为蓝色,它会调用didSelectRowAtIndexPath(使用NSLog检查)但不会推送一个被调用的新视图(GraphView)。

这是我用来通过普通按钮调用新控制器WHICH WORKS的代码

GraphView *aSelectionScreenViewController = [[GraphView alloc]
         initWithNibName:@"GraphView"
         bundle:nil];

[self presentModalViewController:aSelectionScreenViewController animated:YES];  [aSelectionScreenViewController release];

我四处搜索,发现我需要在viewload上为UITableView类本身设置一个委托

tableview.delegate = self;

self.tableview.delegate = self;

但它没有用。控制器仍然没有被推动,是的,我检查控制器不是零,因为我用一个简单的按钮尝试它。

所以我在想是否应该在UIViewController上设置UITableView的委托,所以我尝试了这段代码

selectionTable.delegate = selectionTable.self;

但显然它不起作用= \,它搞砸了整个UITableView并导致所有单元格成为其预定义的设置。

所有人都知道如何让它发挥作用。

3 个答案:

答案 0 :(得分:0)

在这里获得完整的图片有点困难,但我可以尝试一些提示。

虽然选择屏幕表可能被称为选择屏幕表控制器,并且类名应该是SelectionScreenTableController以便减少混淆,但是屏幕截图中的插座似乎已正确连接。

我认为问题可能是必须在活动视图控制器上调用presentModalViewController方法才能工作。

据我所知,你有三个视图控制器,一个SelectionScreenTableController,一个GraphViewController,然后还必须有某种主控制器,可能是SelectionScreenController。

SelectionScreenController是活动视图控制器,因此必须是发送presentModalViewController:消息的那个。

有几种方法可以解决这个问题。快速解决方法是在SelectionScreenTableController中创建一个名为selectionScreenController的插座,并将其链接到nib文件中的File's Owner(假设您的SelectionScreen类实际上是一个视图控制器),然后调用:

[selectionScreenController
    presentModalViewController:aSelectionScreenViewController
    animated: YES];

代替你当前的didSelectRowAtIndexPath列表:

答案 1 :(得分:0)

嘿伙计们,我解决了它,在截图中

http://img717.imageshack.us/i/screenshot20100609atpm0.png/

SelectionScreen的XIB中的SelectionScreenTable控制器,视图插座未连接到SelectionScreen XIB中的XIB,所以我猜它没有正确配置。

答案 2 :(得分:0)

我解决了它而不是使用 presentModalViewController。

我使用动画来引入视图 更多信息,请参见以下链接 http://www.iphonedevsdk.com/forum/iphone-sdk-development/13427-uiview-slide-transition.html