gpt4 book ai didi

ios - 从不兼容的类型 'id' 分配给 'ViewController *const_strong'

转载 作者:IT老高 更新时间:2023-10-28 11:23:57 26 4
gpt4 key购买 nike

在我的整个应用程序中,当我设置 ViewController.delegate = self 时,我会收到语义问题警告。我搜索并找到了类似的帖子,但没有一个能够解决我的问题。

ViewController.m:

GameAddViewController *gameAddViewContoller = [[navigationController viewControllers] objectAtIndex:0];
gameAddViewContoller.delegate=self;

我在设置 .delegate=self 时收到错误消息。

GameAddViewController.h:

@protocol GameAddViewControllerDelegate <NSObject>

- (void)gameAddViewControllerDidCancel:(GameAddViewController *)controller;
- (void)gameAddViewController:(GameAddViewController *)controller didAddGame:(Game *) game;

@end

@interface GameAddViewController : UITableViewController <GameAddViewControllerDelegate>
{
sqlite3 *pitchcountDB;
NSString *dbPath;
}
@property (nonatomic, strong) id <GameAddViewControllerDelegate> delegate;
...
@end

ViewController.h:

#import "GameAddViewController.h"

@class ViewController;
@protocol ViewControllerDelegate <NSObject>
- (void)ViewControllerDidCancel:(ViewController *)controller;

@end
@interface ViewController : UIViewController <ViewControllerDelegate>
-(void) checkAndCreateFile;
@end

谁能指出我正确的方向来解决警告消息?

最佳答案

在这一行:

gameAddViewContoller.delegate=self; 

注意 self 的类型是 ViewController,它不符合 GameAddViewController 协议(protocol)。

关于ios - 从不兼容的类型 'id<Delegate>' 分配给 'ViewController *const_strong',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9861538/

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