0

NSArray値を含むを使用していCGRectます。ライブラリ メソッドを使用して配列に含まれるすべての四角形の最大幅を取得する方法はありますか、それとも独自のロジックを実装する必要がありますか? 前もって感謝します。

コードサンプル:

for (int i=0; i<[array1 count]; i++) {
    CGRect rect = [[array1 objectAtIndex:i] CGRectValue];
// Here, some transformation of rects

[array2 addObject:[NSValue valueWithCGRect:rect]];

}

このコードでは、 からフレームを取得しarray1て に追加しようとしていarray2ます。array1XML からフレームを取得しています。これらのフレームを解析し、配列に配置しました。私は自分のコードを非常に簡単な方法で提供しました。

4

2 に答える 2

1

-countそのように何度も配列にメッセージを送信しないでください。もったいないです。

float result = 0.0;
for (value in array1)
  {
  GCRect rect = [value CGRectValue];
  result = MAX(result, rect.size.width);
  }  // "result" now contains the greatest width you saw in the loop.
于 2011-04-14T11:04:53.823 に答える
0
for(int i=0; i < [array2 count]; i++) 
{
    CGRect rect = [[array2 objectAtIndex:i] CGRectValue];
    float widthTest = rect.size.width;
    //this gives you the width of each element. Compare and get the biggest
}
于 2011-04-14T11:11:44.680 に答える