2012-02-22 28 views
2

x座標を取得しようとしているUIImageViewオブジェクトがあります。私はをループにしようとしていると、各オブジェクトのx座標を取得配列は、以下のようないくつかのことの中に同じUIImageViewを持っている場合、私はこれをどのように行うことができ、今配列内のオブジェクトのx、y座標を取得する

endingPoint.x = myObject.center.x; 

次のコードでこれを行いますか?

endingPoint.x = [posArray objectAtIndex:i].center.x; 

私は初心者の質問ですが、私はちょうどiOSから始めています。

+0

endingPoint.x = [[posArray objectAtIndex:i] center].x; 

またはキャスト(UIImageView *)の値が最初にあなた自身 "。初心者のために、最善のことは練習しています。何らかのコーディングをしてください。 – LebRon

答えて

1

を試してみてください。 objectAtIndex:ただし、id(何かへの汎用ポインター)タイプのオブジェクトを返すので、.center(プロパティ)を呼び出すことはできません。

あなたはそれをこのようなカッコ記号使用してメッセージを送信する必要があります:最良の方法は、「によってテストされ

endingPoint.x = ((UIImageView *)[posArray objectAtIndex:i]).center.x; 
1

これは明らかにforループ内で行われます。 Objective-C高速列挙ループまたは標準forループのいずれかで実行できます。

高速列挙ループは次のようになります。ループ内

for (UIImageView *image in posArray) { 
    endingPoint.x = image.center.x; 
    // Do everything else you want to do with the UIImageView inside the array. 
} 
1

この動作するはずです:

endingPoint.x = [[posArray objectAtIndex:i] center].x; 
+0

ありがとう、それは私が探していたものだ –

1

はあなたが非常に接近している

endingPoint.x = [[posArray objectAtIndex:i] center].x; 

または

endingPoint.x = ((UIImageView *)[posArray objectAtIndex:i]).center.x; 
+0

おかげでみんな、それらのかっこと角括弧は初心者に混乱している:( –

関連する問題