से 'id
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
चेतावनी संदेश को हल करने किसी को भी सही दिशा में मुझे बात कर सकते हैं?
इसे ठीक करने के लिए मुझे क्या करने की ज़रूरत है। क्या गेम एड व्यू कंट्रोलर प्रोटोकॉल में मुझे कुछ बदलने की ज़रूरत है? –
अच्छा, यह इस बात पर निर्भर करता है कि आप अपने प्रतिनिधि बनना चाहते हैं। GameAddViewController प्रोटोकॉल को कार्यान्वित कौन कर रहा है – giorashc
GameAddViewController ViewController का बच्चा है और मैं ViewController में gameAddViewControllerDidCancel विधि को कार्यान्वित कर रहा हूं। जब मैं gameAddViewContoller.delegate = self सेट करता हूं तो त्रुटि संदेश ViewController में readyForSegue विधि से है। –