Сделайте сворачивающийся/разворачивающийся текст по нажатию кнопки:

Я новичок в IOS и у меня вопрос Сделайте сворачивающийся/разворачивающийся текст по нажатию кнопки: у лейбла стоит ограничение в 0 строк и констрейнта по высоте. По нажатию на кнопку эта констрейнта последовательно меняется на высоту одной строки лейбла и на высоту 5 строк.

Я правильно понимаю что нужно сделать это через код

import UIKit
class NewViewController: UIViewController{
@IBOutlet weak var Label: UILabel!
override func viewDidLoad() {
super.viewDidLoad()}
@IBAction func ButtonThac(_ sender: Any) {
Label.numberOfLines = 5}

У меня пока такой код, что нужно тут добавить не совсем понимаю


Ответы (1 шт):

Автор решения: Gims

Вы уже сделали, но вдруг кто искать будет. Вам нужно 3 элемента из сториборда

  1. Label
  2. height constraint
  3. button

по нажатию кнопки вы меняете количество строк через переменную выведенный label и высоту констрэинта через выведенный constraint.

попробуйте сами сделать, прочитав то, что я написал. Если не получится - тогда уже смотрите код ниже

@IBOutlet weak var heightCon: NSLayoutConstraint!

@IBOutlet weak var label: UILabel!



var count = 0

@IBAction func button(_ sender: Any) {
   
    count += 1

       if (count % 2) != 0{
       label.numberOfLines += 1
       heightCon.constant += 30
        view.layoutIfNeeded()

     } else {

        label.numberOfLines += 5
        heightCon.constant += 150
            view.layoutIfNeeded() 
}
→ Ссылка