2012-01-24 7 views
1

私はそのBORDERCOLORを設定したい対象のUIViewのを持っている:CALayerはCGColorオブジェクトを保持していますか?

UIView *myView = ...; 
myView.layer.borderWidth = 1; 
myView.layer.borderColor = [UIColor greenColor].CGColor; 

はこのようにそれを行うことは安全ですか? UIColorオブジェクトは自動再生され、それと共にCGColorオブジェクトが作成されます。さて、borderColorプロパティはCGColorを保持しているので、UIColorをオートレリースすることができますか、または別のインスタンス変数にUIColorを保持する必要がありますか?

答えて

2

CGColorUIColorと同じ意味でのオブジェクトではなく、層はCGColorRetain()を使用してそれを保持することになるので、これは細かい

+0

これを明確にしていただきありがとうございます。 – Tom

1

はいです。レイヤーは機能するように色が必要なので、色を保持します。

私は、ドキュメントまたは@property宣言でこのインテントを宣言する必要があることに同意します。

+0

ええ、それが私が混乱した理由です。ありがとう! – Tom

関連する問題