我有一個自定義的類。而且我想如果有其他類實例化它,那麼它「必須」有一些具體的方法。 如何做到這一點? 我不想繼承它,因爲我沒有添加任何額外的功能或以任何方式修改其功能。 我想到自定義協議,但我的班級如何知道「它應該允許實例化自己,只有當定義的協議是通過實例化類來實現的。」
場景是
classA : base-class classB : base-class classM
有base-class
類型的財產。我設置爲objclassA
或objclassB
。 ClassA
& classB
實例化classM
然後objclassM`` calls method
回調method which is in both
CLASSA &
CLASSB . warning in
classM基類可能不響應callBack`定義自定義協議
@protocol UITableViewMgrDelegate
@required
-(void)tableRowSelected:(int)idd selectedType:(NSString*)selectedType selectedValue:(NSString*)selectedValue;
@end
@interface UITableViewMgr : UIViewController {
NSMutableArray *dataSo,*IDs;
NSMutableArray *dataSoRight;
UIViewController *backObject;
}
in .m
[backObject tableRowSelected:(NSInteger)[indexPath row] selectedType:[NSString stringWithFormat:@"cell"] selectedValue:[NSString stringWithFormat:@"cell"]];
//warning at this line
// 'UIViewController' may not respond to '-tableRowSelected:selectedType:selectedValue:'
thankssssssss我被定義在我的課定製協議這種方式
@protocol UITableViewMgrDelegate
@required
-(void)tableRowSelected:(int)idd selectedType:(NSString*)selectedType selectedValue:(NSString*)selectedValue;
@optional
- (void)AddList:(NSString*)value isNew:(int)isNew;
@end
驅除掉這些警告
我想沒有看你的代碼,他不能真正幫助你。 – vikingosegundo 2010-12-18 09:16:24
我應該發佈什麼部分代碼? – saurabh 2010-12-18 09:34:37
發佈您遇到問題的代碼塊。 – EmptyStack 2010-12-18 09:55:20