0

XCodeプレイグラウンドで実行する次のコードを取得しました:

let initalFrame = CGRect(x:0,y:0,width:10,height:10)
let myLabel = UILabel(frame: CGRectMake(0,0,50,50))

myLabel.backgroundColor = UIColor.greenColor().colorWithAlphaComponent(0.3);
myLabel.layer.borderColor = UIColor.darkGrayColor().CGColor
myLabel.layer.borderWidth = 2
myLabel.layer.cornerRadius = 15
myLabel.text = "Wow"

let gradient = CAGradientLayer()
gradient.frame = initalFrame
let startCol = UIColor(hue: 0.580555, saturation: 0.31, brightness: 0.90, alpha: 1.0)
let endCol = UIColor(hue: 0.58333, saturation: 0.5, brightness: 0.62, alpha: 1.0)
gradient.colors = [startCol, endCol]
myLabel.layer.insertSublayer(gradient, atIndex: 0)
myLabel.textAlignment = .Center

しかし、私は次の問題に直面しました:

  1. 背景が丸みを帯びた四角形を超えています。
  2. グラデーションが表示されません。

ここに画像があります: 1 問題を解決するにはどうすればよいですか? ヒントをありがとう。この質問見てる人いますか!?

4

1 に答える 1

0

遊び場を使用しているので、myLabel.clipSubviewsmyLabel.layer.masksToBoundsおよびグラデーションレイヤーを配置するインデックスで遊んでください

于 2014-10-07T16:19:57.723 に答える