2011-05-17 38 views
0

我想点击一个按钮来改变iPhone应用程序中的视图。我使用这个代码,它工作,但有2个警告。点击一个按钮来更改视图警告问题

-(IBAction) showSearchFlye:(id)send; 
{ 
    NSLog(@"Shoing Search flye"); 
    SearchFlye *search= [[SearchFlye alloc] initWithNibName:@"SearchFlye" bundle:nil]; 
    [self.navigationController pushViewController:search animated:NO]; 

} 

这是警告信息http://hpics.li/fef7ba9

,这是类SearchFlye

@interface SearchFlye : UIViewController { 

} 

@end 

应用做工精细的接口,但是我不明白WY我有这样的警告?如果这是为了改变视图是正确的?

感谢名单

回答

0

你的警告,应该来自没有进口头文件SearchFlye是在.m文件中声明showSearchFlye已定义。

它工作的原因是这样的:编译器没有关于你的类的信息,因此警告,但是你的类是链接的,它包含了Objective-c运行时需要的所有选择器动态调度)。

如果这是更改视图的正确方法,则取决于您的应用程序UI架构。如果你不需要一个导航控制器或标签栏,似乎很好,我点击一个按钮移动到另一个视图...

+0

我添加了#import“FirstViewController.h”,现在没有warnig了:)谢谢 – siMonAkro 2011-05-17 17:20:41

-2

喜请使用@class类名在你的.h文件中.. 创建基础的导航项目,并尝试推动喜欢你的第二个问题,否则从主视图控制器添加RootViewController的,然后尝试发送pushviewcontroller

,也或许你有@class UIPickerTable在.h文件中,你没有#进口UIPickerTable.h您{} RootViewController的.m文件

+1

这个答案的第二部分是从这个S.O.的复制/粘贴。帖子:http://stackoverflow.com/questions/620661/receiver-classname-is-a-forward-class-and-corresponding-interface-may-not-exis(回答bubjavier)。事实上,UIPIckerTable与提问者在这里提出的问题无关。 – sergio 2011-05-17 17:06:27

+0

@sergio:sir但是,而不是直接张贴链接我添加此代码都是相同的只有正确的?? ... – 2011-05-17 17:13:01

+0

当使用另一个人的话,确保你把它们放在引号中,并提供一个链接,他们说。否则,你在抄袭。 – 2011-05-17 19:50:51