引用AppDelegate方法 – iphone
发布时间:2020-12-15 01:53:38 所属栏目:百科 来源:网络整理
导读:我有一个AppDelegate有3个视图。我加三个 [window addSubview:gameViewController.view];[window addSubview:viewSettings.view];[window addSubview:viewController.view];[window makeKeyAndVisible]; 在应用程序委托中,我有一些通过调用交换视图的方法 [
我有一个AppDelegate有3个视图。我加三个
[window addSubview:gameViewController.view]; [window addSubview:viewSettings.view]; [window addSubview:viewController.view]; [window makeKeyAndVisible]; 在应用程序委托中,我有一些通过调用交换视图的方法 [window bringSubviewToFront:gameViewController.view]; 当我在viewController里面时,我使用 pinkAppDelegate *appDelegate= (pinkAppDelegate *)[[UIApplication sharedApplication] delegate]; [appDelegate switchToSettings]; 切换我的子视图…到目前为止这么好。 但是,当我在我的viewSetting UIViewController,并做同样的appDelegate调用时,它会阻塞,就像它不明白如何调用appDelegate方法。 我的所有意见都挂在我的主窗口xib中,但是无法弄明白为什么我无法遍历主要appdelegate中的方法 解决方法
在viewController中,您正在设置一个名为appDelegate的局部变量,指向您的应用程序委托。这就是这条线:
pinkAppDelegate *appDelegate= (pinkAppDelegate *)[[UIApplication sharedApplication] delegate]; 该变量是viewController的本地变量,因此您无法在设置视图控制器中使用它。你需要在那里设置另一个变量。 或者,在您的应用程序中使用这个很好的#define。 (您需要将其放在您的项目中每个文件中包含的.h头文件中。) #define myAppDelegate (MyAppDelegate *)[[UIApplication sharedApplication] delegate] 那么你可以在以下任何地方做: [myAppDelegate doSomething]; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |