2011-05-16 166 views
0

Objective-c对我来说很新,所以我可能会问一个荒谬而简单的问题,但一直在查看网络和某些书籍,我有点难倒在一定程度上。很可能是由于我对obj-c的严重缺乏知识。所以...任何帮助,这个将非常方便...在主应用程序视图加载之前获取一些设备信息

我想要做的就是获取应用程序启动时运行的应用程序的设备(使用[UIDevice currentDevice])的一些简单信息,但主应用程序视图加载之前。简单的东西,但诚实地说,我还没有想到如何做到这一点!然后,我希望在整个应用程序及其视图中提供任何必须可用的信息(在一个变量中?不太确定这是否是obj-c的正确术语)。再一次,我没有太多的想法。

我来形成一个web开发背景,所以这是非常新的我很大程度上。所以...是的,任何提示/指针,帮助等将是可笑的有用!

在此先感谢,对不起我的n00b问题!

回答

1

这个地方可能会出现在您的App Delegates -application:didFinishLaunchingWithOptions:方法中。当您的应用完成启动并且(通常)负责将主视图添加到应用程序窗口时,此方法会被调用。您可以将这些信息放入应用程序委托的实例变量中。您可以通过致电[[UIApplication sharedApplication] delegate]从程序中的任何位置获取对应用程序代理的引用。一个示例实现可能看起来像这样:

// In MyAppDelegate.m 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    //Get your information, potentially put it into an 
    //instance variable of the App Delegate 

    //Add the main view to the view hierarchy 
    [self.window addSubview:viewController.view]; 
    [self.window makeKeyAndVisible]; 

    return YES; 
} 
+0

非常好,这几乎是我想要的。谢谢你的伟大答案! – rich 2011-05-16 21:19:05

0

您可能可以使用viewController方法“viewWillAppear”。它会希望与“viewDidUnload”方法位于同一区域,这将在任何* ViewController.m文件连接到主视图中。

可能需要在调用UIApplicationMain之前在main()例程中执行此操作。

相关问题