如何在Swift中翻转标签(获取镜像视图)(Xcode 6.3)

时间:2015-04-21 21:45:42

标签: ios swift cocoa-touch uiview uilabel

我正在尝试使用CGAffineTransformMakeRotation翻转(获取镜像视图)标签文本。但仍然没有进展。

此代码垂直翻转但我无法水平翻转。

self.labelShowdata.transform = CGAffineTransformMakeRotation((180.0 * CGFloat(M_PI)) / 180.0)

由于

4 个答案:

答案 0 :(得分:32)

试试这个:

self.labelShowdata.transform = CGAffineTransformMakeScale(-1, 1);

答案 1 :(得分:16)

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()

答案 2 :(得分:3)

如果您需要镜像视图,则应使用CGAffineTransformMakeScale:

self.labelShowdata.transform = CGAffineTransformMakeScale(-1., 1);

答案 3 :(得分:3)

对于基于@Choppin Broccoli解决方案的Swift 3:

self.labelShowdata.transform = CGAffineTransform(scaleX: -1, y: 1)