【问题标题】:Navigating from table view to table view to table view (iOS)从表视图导航到表视图再到表视图 (iOS)
【发布时间】:2011-04-04 19:22:33
【问题描述】:

我在定义多个表格之间的导航时遇到了困难。我正在使用 iOS 应用程序的导航模板。从 RootViewController(RootViewController.xib 已经包含一个表),我可以导航到另一个表视图(在界面构建器中,我能够将 IBOutlet 与自定义 UITableViewController 连接起来):

@interface RootViewController : UITableViewController <NSFetchedResultsControllerDelegate> {
    xxxTableViewController *teeTimeTableVC;
}
@property (nonatomic, retain) IBOutlet xxxTableViewController *xxxTableVC;

在 RootViewController.m 中,以下行可以正常工作:

[self.navigationController pushViewController:self.xxxTableVC animated:YES];

界面构建器不允许我将第二个 XIB 文件(比如说 xxxTableViewController)中的 IBOutlet 与下一个 UITableViewController 连接。

@interface xxxTableViewController : UITableViewController 
    <UITableViewDataSource, UITableViewDelegate> {
    yyyTableViewController *yyyTableVC;
}
@property (nonatomic, retain) IBOutlet yyyTableViewController *yyyTableVC;

在 xxxTableViewController.m 中以下行显示警告:

[self.navigationController pushViewController:self.yyyTableVC animated:YES];

在代码中,我还收到一条警告:当从不同的 Objective-C 类型传递“pushViewController:animated:”的参数 1 时,不兼容的 Objective-C 类型“struct yyyViewController *”,预期为“struct UIViewController *”

我是否试图实施一个糟糕的概念?是否只能直接从 RootViewController 以这种方式进行?两个控制器类似乎是相同的:

@interface yyyTableViewController : UITableViewController 
    <UITableViewDataSource, UITableViewDelegate>{
}

谁能给我一个提示?我是否需要使用不同的 UI 元素或实现其他协议?

谢谢你,帕特里克

【问题讨论】:

    标签: iphone objective-c uinavigationcontroller uitableview


    【解决方案1】:

    问题是您的第二个控制器没有navigationController 成员,因此当您尝试使用它时编译器会抱怨。您需要自己创建此成员,并在初始化期间将其传递给类。

    【讨论】:

    • 你好,安迪。谢谢您的回答。我认为我不同意或者我不完全理解。 navigationController 成员似乎是从 UITableViewController 继承的,它从 UIViewController 继承它。
    • 另一个警告警告可能更明确:xxxTableViewController.m:警告:语义问题:不兼容的指针类型将'yyyTableViewController *'发送到'UIViewController *'类型的参数但这也不能解释问题使用界面生成器。是否有可用的教程演示两个以上表格之间的导航?
    • @user690110 再次查看您的警告,听起来您几乎没有包含 yyyTableViewController 的标头,因此编译器无法确定 yyyTableVC 的类型。我不确定还有什么会导致该警告。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多