我在我的Picker
课程中:
- (id)initWithFrame:(CGRect)frame withSender:(id)sender withDate:(NSDate*)date {
if ((self = [super initWithFrame:frame])) {
datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 0 , 0, 0)];
datePicker.date = date;
[sender changeDate:self.datePicker];
datePicker.date = date;
}
在发件人类中:
- (void)changeDate:(id)sender {
//some code
}
这两种方法也在.h文件中声明。
但是当我编译时,即使一切运行良好,xCode告诉我:
没有'-changeDate:'找到方法
引用第[sender changeDate:self.datePicker];
行
我能做些什么才能让它消失?谢谢!
答案 0 :(得分:2)
因为您的发件人具有类型ID,并且对于类型ID,所以没有名为(changeDate :)的方法。因此,如果要调用changeDate:
方法,则必须转发发件人,或者必须指定特定的类类型。
(MySender *)mySender = (MySender *)sender;
或
- (id)initWithFrame:(CGRect)frame withSender:(MySender *)sender withDate:(NSDate*)date {