为什么我看到以下警告:“没有匹配方法签名的消息将被假定为返回'id'并接受'...'作为参数”?

时间:2009-11-10 10:26:31

标签: iphone

在写下面的代码时,我得到了警告:“没有匹配方法签名的消息将被假定为返回'id'并接受'...'作为参数”

ViewSlider *viewSlider=[[ViewSlider alloc]init];
[viewSlider slideView:view1 secondView:view2]; 

3 个答案:

答案 0 :(得分:3)

可能是因为该方法与

有关
[viewSlider slideView:view1 secondView:view2];

不会出现在ViewSlider的头文件中。

答案 1 :(得分:0)

就像unforgiven所说,你可能想在头文件中声明它。这样,编译器在您使用它时就会知道该消息。

在Objective-C中,您仍然可以发送消息,即使它对编译器来说是未知的。但如果编译器不知道它,它将不得不作出一些假设。就像返回类型和它的参数类型一样。这就是警告的内容:“嘿,看,你可以发送那个slideView:secondView:我从未听说过的消息但是我只是假设它会返回一些对象并接受任何东西作为它的参数。”

答案 2 :(得分:0)

您是否导入了.m文件中的文件...... ??? 如果没有,请声明view1&的文件。 .m文件中的view2。 这可能有所帮助。