如何在可扩展的 UILabel 中添加 "More" 和 "Less" 文本指示器?

How to add a "More" and "Less" text indicator in a expandable UILabel?

我是 IOS 学习者。我正在做一个示例项目,其中我需要 UILabel 中的 "More" 和 "Less" 文本指示符,为此我添加了 SingleTapGestureRecognizer 以根据文本展开和收缩content.The 文本内容来自 API 并且是动态的。

这里我附上了我所需输出的屏幕截图。(屏幕截图来自android)。

我还以编程方式调整 UILabel 的大小,但约束除外(无自动布局)。点击手势的代码是

viewDidLoad()

let singleTapGestureRecognizer = UITapGestureRecognizer(target: self, action: "singleTapped")
        singleTapGestureRecognizer.numberOfTapsRequired = 1
        singleTapGestureRecognizer.enabled = true
        singleTapGestureRecognizer.cancelsTouchesInView = false

        lblAmneties.addGestureRecognizer(singleTapGestureRecognizer)

方法是

var amnetiesClicked = false
func singleTapped()
{
    if(amnetiesClicked == false) { amnetiesClicked = true }
    else { amnetiesClicked = false }
    if(amnetiesClicked == true)
    {
        Amneties.sizeToFit()
        self.display()
    }
    else
    {
        if(self.Amneties.frame.size.height > 70 )
        {
            self.Amneties.frame.size.height = 70
            self.display()
        }
    }
}

这里 display() 是我以编程方式对齐视图的所有内容的方法。

我不知道该怎么做。 我用的是xcode7.1.1Swift2.0

我使用 TTTAttributed 标签来做到这一点 https://github.com/TTTAttributedLabel/TTTAttributedLabel 它有一个预定义的方法来做到这一点。