2017-09-06 4 views
0

イメージに2つの異なるボーダーレイヤーを追加しようとしています。UIImageの複数のCALayerボーダー

私は、次のコードで最初に追加しました:

myImage.layer.borderColor = UIColor.blue.cgColor myImage.layer.borderWidth = 2.0 myImage.roundLayerCorners()

私のような何かをするとき:

let sublayer: CALayer = CALayer() sublayer.backgroundCOlor = UIColor.white.cgColor sublayer.borderWith = 4.0 myImage.layer.addSublayer(sublayer)

それはまったく表示されません。なぜ、複数の罫線を追加するのですか?

私は2ピクセル幅の青い枠線が

ありがとう2ピクセル幅の白のボーダーが続くたい!

+1

こんにちは、それはあなたの質問から明らかではないのですが、あなたが割り当てられているthere-あなたサブレイヤフレーム? – Sparky

答えて

1

サブレイヤにフレームがありません。これは、それ自体がどれくらい大きくなるかを知らないことを意味します。あなたは、コードの1行を追加することによってこの問題を解決することができます

sublayer.frame = CGRect(x:2, y: 2, width: myImage.frame.width - 4, height: myImage.frame.height - 4) 

あなたのサブレイヤのセットアップは次のようになりますようにするには:

let sublayer: CALayer = CALayer() 
sublayer.backgroundCOlor = UIColor.white.cgColor 
sublayer.borderWith = 4.0 
sublayer.frame = CGRect(x:2, y: 2, width: myImage.frame.width - 4, height: myImage.frame.height - 4) 
myImage.layer.addSublayer(sublayer)