13

次のうちどれがより高速で、その理由は?

CGFloat sum = 0;
for (UIView *v in self.subviews)
    sum += v.frame.size.height;

また

CGFloat sum = [[self.subviews valueForKeyPath:@"@sum.frame.size.height"] floatValue];
4

3 に答える 3

0

Apple のドキュメントも参照してください。

キーと値のコーディングは効率的ですが、ダイレクト メソッド呼び出しよりもわずかに遅いレベルの間接化が追加されます。Key-Value コーディングは、それが提供する柔軟性を利用できる場合にのみ使用してください。

キー値コーディング ドキュメント

于 2013-05-02T12:42:20.847 に答える