2011-09-05 49 views
1

我已經聲明在一個視圖控制器作爲一種方法:如何調用在同一個ViewController中聲明的簡單方法?

-(void)rqst_run{ 
    // method login here 
} 

當我在viewDidLoad方法寫下面的代碼(在相同的文件中)之後[超級viewDidLoad中];

[self rqst_run]; 

我得到這個錯誤:

Method '-rqst_run' not found (return type defaults to 'id') 

任何想法如何解決這一問題?提前

斯特凡

+0

這是一個編譯器錯誤,對嗎?你是否在.h文件中聲明瞭rqst_run方法? – SVD

+0

我意識到我誤解了這個 - 當你說錯誤的時候,你是否確實意味着一個警告(可能由-Werror引起的錯誤)? –

回答

4

THX方法需要正在使用之前需要申報。

你能解決你的問題的方式有兩種:

  • 移動rqst_run的聲明viewDidLoad中
  • 申報rqst_run的聲明之前在@接口部分爲類(無論是在。小時,或在您的m類延續)

第二個是最好的,所以你會,例如,在您的m的頂部添加一個類似於下面

@interface MyClass() 
- (void) rqst_run; 
@end 

如果您不熟悉類延續的概念,this page提供了一個合理的總結;實質上,.m中的@interface部分用於聲明,您希望將其保留在「公共接口」之外(即.h)

+0

是的,我知道了!我有一些PHP的壞習慣...謝謝! – Steve

相關問題