2011-09-01 103 views
0

我試圖使用一個專用的動畫(因爲我沒有將它提交給App Store的)如何禁止私人API的警告?

[UIView setAnimationTransition:103 forView:detailVC.view cache:YES]; 
[UIView setAnimationPosition: CGPointMake(262, 723)]; 

我收到兩次警告從setAnimationPosition

  1. 「的UIView可能不setAnimationPosition迴應」, 「語義問題,方法setAnimationPosition未找到」。

反正是有抑制這兩個警告?

感謝

利奧

回答

2

良好的發展實踐是警告視爲錯誤(除非你有一個真正理由不)。

在你的情況下,使用私有API應該被認爲是一個錯誤,因爲如果Apple使用未記錄的API,它將拒絕你的應用。

+0

是的。我打算將警告視爲錯誤,這就是爲什麼我想壓制此警告,因爲我不打算將我的應用程序提交給Apple .. – leo

+1

未來選民的注意事項:OP不打算提交給App Store,所以這是不是答案。 –

4

簡單地聲明他們在一個類別聲明,就像如下:

@interface UIView (PrivateMethods) 
+ (void)setAnimationPosition:(CGPoint)point; 
@end 

但是,正如馬丁·戈登指出,蘋果將拒絕您的應用程序,如果它使用私有的API。

+0

我試過了,但警告仍在。我在我的@implementation之前添加了代碼,我不確定它是否工作 – leo

+0

將 - 更改爲a,因爲它是一個類方法。 –

+0

我意識到setAnimationPosition實際上是一個類方法。所以通過在代碼中用「+」替換「 - 」,警告消失了。如果你修復它,我會接受你的答案。謝謝! – leo

0

您可以簡單地添加-w編者旗下構建階段>編譯源代碼yourfilename.m

注:這是工作的非電弧類別。