0

ヘルパー クラス (#import "JLHelper.h") をインポートした場合にのみ、この警告が表示されます。

警告が発生する場所の例...

[[subViews objectAtIndex:i] center].y+translation.y)];

コンパイラが center という名前のメソッドを複数認識しているということは理解していますが、center はフレームワークの CLRegion.h で宣言されています。

この場合、コンパイラが複数のメソッドを認識するのはなぜですか? 懸念すべき問題はありますか?もしそうなら、どうすればそれを追跡して解決できますか?

ありがとう、

ジョン

エリックのおかげで問題は解決しました! これは、修正後の私のコードのより広範な外観です

NSArray *subViews = [self subviews];
UIImageView *bottomResizer;
int count = [subViews count];
for (int i =count-1; i>=0; i--) {
    if([[subViews objectAtIndex:i] tag] == 301) {
        bottomResizer = (UIImageView*)[subViews objectAtIndex:i];
        [bottomResizer setCenter:CGPointMake([bottomResizer center].x, [bottomResizer center].y+translation.y)];

    }
}
4

1 に答える 1

4

オブジェクトをキャストする必要があるように見えるので、オブジェクトはあなたが何を意味するのかを知っています...

[((OBJECT_TYPE*)[subViews objectAtIndex:i]) center].y+translation.y)];

ここで、OBJECT_TYPEはCLRegionオブジェクトです。

于 2012-06-20T23:57:59.933 に答える