2011-10-20 6 views
1

私はCPLockControllerクラスを使用していました。"は、Xcode 4.2で 'initWithStyle:'"という警告に応答しない可能性があります。

CPLockController *lockController = [[CPLockController alloc]initWithStyle:(UITableViewStyle)CPLockControllerTypeAuth]; 

CPLockController.mファイル内の実装は次のとおりです:

- (id)initWithStyle:(CPLockControllerStyle)theStyle { 
    if(self == [super init]){ 
     self.style = theStyle; 
     self.retry = NO; 
     self.tempString = [NSMutableString string]; 
     self.hideCode = YES; 
    } 

    return self; 
} 
この行がコードにあるどこ

'CPLockController' may not respond to 'initWithStyle:' 

:Xcodeの4.2にアップグレードするのでしかし、私は次の警告を取得していました

とタイプ定義CPLockControllerStyle:

typedef enum { 
CPLockControllerTypeAuth, 
CPLockControllerTypeSet 
} CPLockControllerStyle; 

私はgithubで問題を作成しましたが、これまでの回答はありませんでした。

お願いします...ありがとう!

答えて

3

これは、開発者がクラス宣言で-initWithStyle:を宣言していないためです。 CPLockController.hを調べると、-initWithStyle:は存在しません。開発者は(あなたがバグを提出する必要があり、その場合には、多分彼はそれを忘れています)、これは行われなかった理由

は私はわからないんだけど、次のように簡単にCPLockController.hに宣言を追加することができます。

@interface CPLockController : UIViewController <UITextFieldDelegate> { 
    // Bunch of ivars 
} 

// Bunch of properties 

- (void)setTitle:(NSString *)title; 
- (id)initWithStyle:(CPLockControllerStyle)theStyle; // <-- add this line 
@end 
+0

Thx ...警告:警告:列挙型 'UITableViewStyle'から別の列挙型 'CPLockControllerStyle' [-Wconversion、3]に暗黙的に変換されました。 ' – BufferStack

+1

@Tajarこれは明示的にキャストしたためです'(UITableViewStyle)'そのキャストを削除します。 –

+0

ありがとう!超熟女を助けるスーパーエキスパート! – BufferStack

関連する問題