【问题标题】:How can I flip a label (get the mirror view) in Swift (Xcode 6.3)如何在 Swift(Xcode 6.3)中翻转标签(获取镜像视图)
【发布时间】:2015-04-21 21:45:41
【问题描述】:

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

这段代码垂直翻转它,但我不能水平翻转它。

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

谢谢

【问题讨论】:

标签: ios swift cocoa-touch uiview uilabel


【解决方案1】:

试试这个:

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

斯威夫特 5:

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

【讨论】:

    【解决方案2】:

    Swift extension 可以垂直或水平翻转任何 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()

    【讨论】:

    • 斯威夫特 3:transform = CGAffineTransform(scaleX: -transform.a, y: transform.d)
    【解决方案3】:

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

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

    【讨论】:

      【解决方案4】:

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

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

      【讨论】:

        猜你喜欢
        • 2020-01-22
        • 2017-06-24
        • 2023-03-06
        • 2012-12-10
        • 2012-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多