gpt4 book ai didi

iphone - 引用 AppDelegate 方法 - iPhone

转载 作者:行者123 更新时间:2023-12-03 18:23:06 24 4
gpt4 key购买 nike

我有一个 AppDelegate,它有 3 个 View 。我添加了所有三个

[window addSubview:gameViewController.view];
[window addSubview:viewSettings.view];
[window addSubview:viewController.view];
[window makeKeyAndVisible];

在应用程序委托(delegate)中,我有一些通过调用来交换 View 的方法

[window bringSubviewToFront:gameViewController.view]; 

当我在 viewController 内部时,我使用

pinkAppDelegate *appDelegate=  (pinkAppDelegate *)[[UIApplication sharedApplication] delegate];

[appDelegate switchToSettings];

切换我的 subview ...到目前为止一切顺利。

但是,当我在 viewSetting UIViewController 中执行相同的 appDelegate 调用时,它会卡住,就像它不明白如何调用 appDelegate 方法一样。

我的所有 View 都卡在我的主窗口 xib 中,但不明白为什么我无法遍历主 appdelegate 中的方法

最佳答案

在 viewController 内,您正在设置一个名为 appDelegate 的局部变量,该变量指向您的应用程序委托(delegate)。这就是这一行的作用:

pinkAppDelegate *appDelegate= (pinkAppDelegate *)[[UIApplication sharedApplication] delegate];

此变量是 viewController 的本地变量,因此您不能在设置 View Controller 中使用它。您需要在那里设置另一个变量。

或者,在您的应用程序中使用这个漂亮的#define。 (您需要将其放入项目中每个文件中包含的 .h 头文件中。)

#define myAppDelegate (MyAppDelegate *)[[UIApplication sharedApplication] delegate]

然后您可以在任何地方执行以下操作:

[myAppDelegate doSomething];

关于iphone - 引用 AppDelegate 方法 - iPhone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/851054/

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