UIKit:扩展圆形UIView

3

我需要一份使用Swift 2.0编写的答案,适用于iOS 8.0或更高版本。我有一个圆形的UIView,我想要将其扩展,但保持圆形的属性。

以下是设置UIView的代码。

let frame: CGRect = CGRect(x: 100, y: 100, width: 10, height: 10)
let view: UIView = UIView(frame: frame)
view.layer.cornerRadius = 5.0

你能贴一些代码吗?你是如何创建你的圆形视图的? - joern
让 frame = CGRect(x: 100, y: 100, width: 10, height: 10)。让 view = UIView(frame: frame)。view.layer.cornerRadius = 5。抱歉,我在手机上,格式可能有点乱。 - Cody Weaver
1个回答

4

如果您想扩展您的圆形视图,可以通过调整其比例来实现:

circleView.transform = CGAffineTransformMakeScale(2, 2)

您可以对变化进行动画处理:
UIView.animateWithDuration(1) { () -> Void in
    self.circleView.transform = CGAffineTransformMakeScale(2, 2)
}

如果您想让按钮仅短暂地扩展,然后将其恢复到原始大小,您可以链接两个动画:

UIView.animateWithDuration(0.4, animations: { () -> Void in
    self.circleView.transform = CGAffineTransformMakeScale(1.2, 1.2)
}) { (finished) -> Void in
    UIView.animateWithDuration(0.4, animations: { () -> Void in
        self.circleView.transform = CGAffineTransformIdentity
    })
}

enter image description here


1
这会扩展视图,但是角半径不会将视图保持为圆形。 - Cody Weaver
是的,它可以。请看动画gif。 - joern
谢谢您的回复,我发现您的答案是正确的,并已改进我的问题以添加代码。如果您认为我的问题是一个好问题,我将非常感激并投上一票。 - Cody Weaver

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接