gpt4 book ai didi

iphone - 当 'MyObjectViewDelegate' 明显存在时找不到协议(protocol)声明?1

转载 作者:行者123 更新时间:2023-12-03 18:41:56 25 4
gpt4 key购买 nike

我有一堂这样的课..

#import "MyObjectAddView.h"
#import "MyAppDelegate.h"

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

@class MyObjectAddView;

@interface AccountViewController : UIViewController <UIScrollViewDelegate, MyObjectAddViewDelegate, UIImagePickerControllerDelegate> {

MyObjectAddView *myAddView;
.....
}

@property (nonatomic, retain) IBOutlet MyObjectAddView *myAddView;

- (id) initWithSettings:(SettingsObject *)settings;

@end

当我明确导入并包含协议(protocol)定义位置的 @class 时,为什么它突然告诉我找不到“MyObjectAddViewDelegate”的协议(protocol)声明?下面是MyObjectAddView的设置方法:

#import <UIKit/UIKit.h>
#import "MyAppDelegate.h"

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

@protocol MyObjectAddViewDelegate;

@interface MyObjectAddView : UIView <UITextFieldDelegate> {

@private
id <MyObjectAddViewDelegate> delegate;
....
@public
.....
}

@property(nonatomic, assign) id <MyObjectAddViewDelegate> delegate;
.....

@end

@protocol MyObjectAddViewDelegate <NSObject>
// expense == nil on cancel
- (void)myObjectAddViewDidFinish:(MyObjectAddView *)addView;

@end

一切看起来都很完美,我没有看到任何循环导入?!有什么建议说明为什么它可能在 MyObjectAddView 中看不到协议(protocol)定义吗?

谢谢。

最佳答案

导入类的 header 后,不需要对该类进行前向引用。只有当您计划将 header 包含在实现文件中时,才进行前向引用。删除 @class MyObjectAddView ,如果可以解决问题,请告诉我,如果没有,我可能会为您提供另一个解决方案。

关于iphone - 当 'MyObjectViewDelegate' 明显存在时找不到协议(protocol)声明?1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5424886/

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