gpt4 book ai didi

ios - 找不到 AppDelegate 类

转载 作者:可可西里 更新时间:2023-11-01 05:02:33 24 4
gpt4 key购买 nike

我在很多类中导入了 AppDelegate.h:

#import "AppDelegate.h"

@interface LoginViewController : UIViewController<UITextFieldDelegate>
{

}

@property (nonatomic, retain) AppDelegate *app;

但不知何故它在我的 loginviewcontroller.h 中停止工作。它说:

 unknown type name 'AppDelegate' [1]
property with 'retain (or strong)' attribute must be of object type [3]

我在一开始就创建了这个类,它总是像它应该的那样工作。当它从这个错误开始时,我没有对类或 AppDelegate 进行任何更改。

我可以毫无问题地将它导入其他类。我也尝试重新创建类(class),但没有帮助。

有人知道如何解决这个奇怪的错误吗?

最佳答案

使用这行代码不是一个好主意

@property (nonatomic, retain) AppDelegate *app;

在每个类中你都需要它。在您需要的地方访问委托(delegate)应用程序的简单方法是执行以下操作:

AppDelegate* appDel = (AppDelegate*)[[UIApplication sharedApplication] delegate];

显然你需要做:

#import "AppDelegate.h"

在你使用它的类中。

如果你想要一个更简洁的方法来做到这一点,你可以在你的 AppDelegate.h 中创建一个类方法,如下所示:

+(AppDelegate*)sharedAppdelegate;

在AppDelegate.m中定义如下:

+(AppDelegate*)sharedAppdelegate
{
return (AppDelegate*)[[UIApplication sharedApplication] delegate];
}

然后,在需要的地方调用(导入 AppDelegate.h 后):

AppDelegate* sharedApp = [AppDelegate sharedAppdelegate];

希望对您有所帮助。

P.S. 为什么需要访问委托(delegate)?

关于ios - 找不到 AppDelegate 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9162941/

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