2011-05-17 71 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