如何在 Swift (Xcode 6.3) 中翻转标签(获取镜像视图)
How can I flip a label (get the mirror view) in Swift (Xcode 6.3)
我正在尝试使用 CGAffineTransformMakeRotation 翻转(获取镜像视图)标签文本。但是还是没有进展。
这段代码可以垂直翻转,但我不能水平翻转。
self.labelShowdata.transform = CGAffineTransformMakeRotation((180.0 * CGFloat(M_PI)) / 180.0)
谢谢
试试这个:
self.labelShowdata.transform = CGAffineTransformMakeScale(-1, 1);
Swift 5:
self.table.transform = CGAffineTransform(scaleX: -1, y: 1);
如果您需要镜像视图,您应该使用 CGAffineTransformMakeScale:
self.labelShowdata.transform = CGAffineTransformMakeScale(-1., 1);
Swift 扩展 垂直或水平翻转任何 UIView:
extension UIView {
/// Flip view horizontally.
func flipX() {
transform = CGAffineTransform(scaleX: -transform.a, y: transform.d)
}
/// Flip view vertically.
func flipY() {
transform = CGAffineTransform(scaleX: transform.a, y: -transform.d)
}
}
用法:
yourView.flipX()
或 yourView.flipY()
对于Swift 3 基于@Choppin Broccoli 的解决方案:
self.labelShowdata.transform = CGAffineTransform(scaleX: -1, y: 1)
我正在尝试使用 CGAffineTransformMakeRotation 翻转(获取镜像视图)标签文本。但是还是没有进展。
这段代码可以垂直翻转,但我不能水平翻转。
self.labelShowdata.transform = CGAffineTransformMakeRotation((180.0 * CGFloat(M_PI)) / 180.0)
谢谢
试试这个:
self.labelShowdata.transform = CGAffineTransformMakeScale(-1, 1);
Swift 5:
self.table.transform = CGAffineTransform(scaleX: -1, y: 1);
如果您需要镜像视图,您应该使用 CGAffineTransformMakeScale:
self.labelShowdata.transform = CGAffineTransformMakeScale(-1., 1);
Swift 扩展 垂直或水平翻转任何 UIView:
extension UIView {
/// Flip view horizontally.
func flipX() {
transform = CGAffineTransform(scaleX: -transform.a, y: transform.d)
}
/// Flip view vertically.
func flipY() {
transform = CGAffineTransform(scaleX: transform.a, y: -transform.d)
}
}
用法:
yourView.flipX()
或 yourView.flipY()
对于Swift 3 基于@Choppin Broccoli 的解决方案:
self.labelShowdata.transform = CGAffineTransform(scaleX: -1, y: 1)