gpt4 book ai didi

objective-c - Apple 代码示例 : TouchCells, 它是如何工作的?

转载 作者:行者123 更新时间:2023-11-29 13:48:03 25 4
gpt4 key购买 nike

我一直在研究自定义 UITableViewCells,并遇到了来自苹果的 TouchCells 示例:TouchCells Example Project

我不知道应用程序是如何加载的。如果您查看 AppDelegate.m,您会看到:

- (void)applicationDidFinishLaunching:(UIApplication *)application
{
// create window and set up table view controller
detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
detailViewController.loadView;

[window addSubview:navController.view];
[window makeKeyAndVisible];
}

这似乎加载了一个 DetailViewController

但是,当应用程序加载时,有一个类型为 MyTableViewControllerUITableViewController 加载了标题 TouchCells。我查看了 MainWindow.xib 并且没有 MyTableViewController(据我所知)。

当我放置断点时

- (void)viewDidLoad
{
// load our data from a plist file inside our app bundle
NSString *path = [[NSBundle mainBundle] pathForResource:@"tableData" ofType:@"plist"];
self.dataArray = [NSMutableArray arrayWithContentsOfFile:path];
}

MyTableViewController.m,断点位于 AppDelegate.mapplicationDidFinishLaunching 中的断点之前。我想这意味着首先加载 MyTableViewController,但我终究无法弄清楚该调用在代码中的位置。

谁能帮我弄清楚 TouchCells 示例的逻辑流程?

谢谢

回答

所选答案中包含正确的信息,但@Caleb 提供的答案显示了如何获取该信息。

谢谢大家

最佳答案

当 applicationDidFinishLaunching 被调用时,界面生成器连接将被设置。因此,任何需要初始化的类都将在 applicationDidFinishLaunching 之前被调用。如果您想知道调用它的方法是什么,请在 XCode 4 中的 Debug Navigator 内部击中断点后跟踪堆栈跟踪。

更新:

在 MainWindow.xib 内部展开 Navigation Controller,您将找到 MyTableViewController。

关于objective-c - Apple 代码示例 : TouchCells, 它是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6442643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com