2012-03-24 10 views
0

私は、方法に描画された10ピクセルの境界線を持つビューを持っています。 境界線の色を更新する必要があります。を再描画するには、[self setNeedsDisplay]を使用します。 境界線のみを更新する必要があるため、使用する境界線は[self setNeedsDisplayInRect:rect]なので、境界線のみを描画します。複雑なCGRectを作成する

ビューの他の領域に境界線のみを表示するにはどうすればよいですか?

おかげ シャニー

答えて

2

CGRectが長方形であるため、できないことがあります。そのため、穴が空くことのできない凸面の形です。

ただし、四角形に分解して[self setNeedsDisplayInRect:rect]を4回呼び出すことができます。あなたがQuartzCoreをインポートする場合

また、あなたはおそらく、ビューのレイヤーのプロパティborderColorを使用することができます。

#import <QuartzCore/QuartzCore.h> 

// ... 

view.layer.borderWidth = 10; 
view.layer.borderColor = [UIColor redColor].CGColor; 

// And to change it later 
view.layer.borderColor = [UIColor greenColor].CGColor; 
0

あなたは4枠の各部分の周りCGRects(上、右、下、左)を取得し、それらのそれぞれに方法を4回呼び出すことができます。

関連する問題