Swift:在iOS8中旋转一个button?

比方说,我的ViewController上有一个或多个100 * 50的矩形button。

import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func myButton(sender: UIButton) { } } 

通常我把我的graphics图像作为他们的形象。 然后我应用自动布局。

但! 我需要他们倾斜不水平,如果你有一个正方形IE,我需要旋转它是一个钻石(45°),这是相同的。 我知道这是不可能通过接口生成器。 如何通过代码做到这一点?

也许我应该使用CGAffineTransformRotate或RotateTranform,但我真的不知道如何开始

最好的方法是旋转视图图层,CGAffineTransformMakeTranslation指示图层将旋转的点的层数,记住层从(0,0)到(1.1),所以中间是(0.5,0.5):

  var transform = CGAffineTransformMakeTranslation(0.5, 0.5) var angle = CGFloat(M_PI / 2.0) //90 degress rotation transform = CGAffineTransformRotate(transform, angle) button.transform = transform button.layer.rasterizationScale = UIScreen.mainScreen().scale button.layer.shouldRasterize = true button.setNeedsDisplay()