我学习了ObjC程序流程,到目前为止我了解链从main.m->UIApplicationMain->AppDelegate->ViewController开始
我不明白的一点是 AppDelegate 类将焦点转移到 ViewController 中的哪个方法......
我觉得理解这个话题很重要,所以感谢任何澄清。
我有这个 Appdelegate.m 代码-
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
MasterViewController *masterViewController = [[MasterViewController alloc] init];
self.navigationController = [[UINavigationController alloc] initWithRootViewController: masterViewController];
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
在 ViewController 内部有这些方法 -
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
[self.navigationController setNavigationBarHidden:YES animated: NO];
}
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear: animated];
}
和其他方法...
我的问题是
- AppDelegate 在 MasterViewController 中将控制权转移到什么方法。在 MasterViewController “完成”它的工作或者它只是循环之后,控件会回来吗?
- MasterViewController 如何获取用于初始化的 xib 名称(它与 m 文件同名吗?即它是什么意思 - nibNameOrNil bundle:nibBundleOrNil)
- 我看到了导航控制器的参与,但是我不明白它是如何连接到视图控制器的......
如果你发现我的误解点-请耐心解释...我觉得过了这点我就可以开始了...