如何在Swift中使用marquee功能?[英] How to use marquee feature in Swift?

本文是小编为大家收集整理的关于如何在Swift中使用marquee功能?的处理方法,想解了如何在Swift中使用marquee功能?的问题怎么解决?如何在Swift中使用marquee功能?问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

我想知道是否有一种方法可以启用文本的水平滚动,即选取框类型的文本.我使用过这个库:https://github.com/cbpowell/MarqueeLabel-Swift 和将"MarqueeLabel.Swift"文件添加到我的应用程序中.但到目前为止,它并没有显示出我想要的选框效果.

我是这样实现的:

class ViewController: UIViewController 
{
@IBOutlet weak var marqueeLabel: MarqueeLabel! 
override func viewDidLoad() {
    super.viewDidLoad()
        self.marqueeLabel.tag = 101
        self.marqueeLabel.type = .Continuous
        self.marqueeLabel.speed = .Duration(5)
        self.marqueeLabel.animationCurve = .EaseInOut
        self.marqueeLabel.fadeLength = 10.0
        self.marqueeLabel.leadingBuffer = 30.0
        self.marqueeLabel.trailingBuffer = 20.0
        self.marqueeLabel.restartLabel()
 }
}

我已经根据"MarqueeLabel中的解决方案在界面构建器中设置了自定义类斯威夫特不工作".还是不行.

我得到的只是一个没有选框效果(或水平文本滚动)的标签.

P.S:我也是 iOS 开发的新手.另外,在实现这个库之前,我尝试使用 UIScrollView 和 UITextView .我无法使用 UIWebView,因为我试图在 TVOS 中实现它.

我的问题是:

  1. 我的代码哪里出错了?

  2. 有没有其他方法可以使用 Swift 显示选取框效果?

提前致谢.

推荐答案

我用这段小代码让我的标签像选框一样滚动:

@IBOutlet weak var firstLabel: UILabel! 
override func viewDidLoad() {
    super.viewDidLoad()

    UIView.animateWithDuration(12.0, delay: 1, options: ([.CurveLinear, .Repeat]), animations: {() -> Void in
            self.firstLabel.center = CGPointMake(0 - self.firstLabel.bounds.size.width / 2, self.firstLabel.center.y)
            }, completion:  { _ in })
}

是的,它成功了.

本文地址:https://www.itbaoku.cn/post/924549.html