2011-10-28 10 views
1

私は新しいカスタムビュークラス(UIViewのサブクラス)を作成し、インターフェイスビルダーでビューのクラスを変更しました。しかし、それはXcodeもコンパイラも私のビューコントローラのビューがクラスを変更したことを知らないようです。View Controllerにビューのクラスを知らせる方法は?

たとえば、自分のカスタムビューにセレクタがあります。-(void) changeShape ビューコントローラ[self.view changeShape]をコールしようとしましたが、自動補完は行われず、コンパイラは "ビューがchangeShapeに応答する "。

アプリは問題なくシミュレータで実行されます。

私は、ビューのクラスが変更されたことをコンパイラに正しく伝える方法を知りましたか?

レオ

+1

メソッドの宣言と定義を投稿してください。 –

+0

少し奇妙な音がするので、ターゲットを掃除しようとするかもしれません。 –

+0

ビュークラスを知るには、このコードを使用します。NSString * className = NSStringFromClass([self.view class]); 'しかし、あなたの目的には役に立たないと思います。 – beryllium

答えて

1

おかげで簡単な解決策はself.viewを型キャストすることです:[(YourViewClass *)self.view changeShape] はあなたにもYourViewClassためのヘッダファイルをインポートすると、コンパイラはあなたに警告を与えるべきではないことを確認してください。

関連する問題