अगर आप लॉग इन करना चाहते हैं तो संदेश आपके एप्लिकेशन कोड से भेजता है, फॉरवर्डिंग टार्गेटफॉर चयनकर्ता: टिप समाधान का हिस्सा है।
@interface Interceptor : NSObject
@property (nonatomic, retain) id interceptedTarget;
@end
@implementation Interceptor
@synthesize interceptedTarget=_interceptedTarget;
- (void)dealloc {
[_interceptedTarget release];
[super dealloc];
}
- (id)forwardingTargetForSelector:(SEL)aSelector {
NSLog(@"Intercepting %@", NSStringFromSelector(aSelector));
return self.interceptedTarget;
}
@end
अब कुछ इस तरह करते हैं:
अपने वस्तु लपेटें
Interceptor *i = [[[Interceptor alloc] init] autorelease];
NSFetchedResultsController *controller = [self setupFetchedResultsController];
i.interceptedTarget = controller;
controller = (NSFetchedResultsController *)i;
और आप एक लॉग संदेश भेजता है के होगा। नोट, अवरुद्ध वस्तु के भीतर से भेजे गए भेजों को अवरुद्ध नहीं किया जाएगा, क्योंकि उन्हें मूल ऑब्जेक्ट 'स्वयं' सूचक का उपयोग करके भेजा जाएगा।
आप शायद @ चयनकर्ता (रिलीज), @selector (dealloc) नहीं –
हाँ, मेरा मतलब @ चयनकर्ता (रिलीज) था। यह मैं प्यारा और इसे कुछ कोड से चिपकाता हूं जो डेलोक को घुमाता है, लेकिन उदाहरण में ऐसा नहीं दिखाना चाहता था, क्योंकि ऐसा करने के साथ कुछ विशेष मुद्दे हैं। फिक्स्ड। –
@LouisGerbarg क्या आप कृपया अपने मूल स्रोत के लिए एक लिंक पोस्ट कर सकते हैं जो रिलीज़ हो गया है? – funroll