iPhone:基于视图的应用程序的起点在哪里?

时间:2009-03-31 16:37:42

标签: iphone

我找不到它。实际上我在寻找可以尝试这个的部分:

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO];
self.navigationController.view.bounds = CGRectMake(0,0,320,480);
self.navigationController.navigationBar.hidden = YES;

3 个答案:

答案 0 :(得分:6)

起点是您的App委托,即applicationDidFinishLaunching方法。在创建新应用程序时,x-code应该为您创建其中一个。

- (void)applicationDidFinishLaunching:(UIApplication *)application {    
    // Do your thing here.
}

答案 1 :(得分:2)

正如另一个答案所说,applicationDidFinishLaunching是应用程序本身的一个很好的触地得分点。但是,如果您想在视图控制器(或导航控制器,视情况而定)的范围内进行操作,您将需要进入控制器的实现文件(.m文件)并查找viewDidLoad中。

- (void)viewDidLoad {
   [super viewDidLoad];
   // go nuts
}

答案 2 :(得分:1)

当你的RootViewController连接到NIB文件中的主窗口时,RootViewController的viewDidLoad方法实际上被称为之前 ApplicationDelegate的applicationDidFinishLaunching:方法。 (至少这是我的经验。)

如果您想在RootViewController开始加载其内容之前设置默认值或执行其他工作,则会出现问题。

解决方案是在ApplicationDelegate中覆盖 - (void)awakeFromNib。这是我在基于NIB的应用程序中知道的最早入口点(ApplicationDelegate的+ init方法除外)。

这是一个很好的参考:http://cocoawithlove.com/2008/03/cocoa-application-startup.html