UILabel показывает точку после ввода некоторых текстов

avatar
KevinVuD
8 апреля 2018 в 02:06
103
1
0

У меня есть UILabel, который реализован в UIToolbar для отображения количества текста.

enter image description here

Проблема заключается в том, что если пользователь начинает печатать, а количество текста превышает 10, на этикетке отображается точка-точка-точка.

enter image description here

Можно ли это исправить? Ниже мой код ярлыка

    let textCountLabel: UILabel = {
    let lb = UILabel()
    lb.text = "0/2000"
    lb.textColor = .lightGray
    lb.sizeToFit()
    return lb
}()

func createToolBar(){
    let toolBar = UIToolbar()
    toolBar.sizeToFit()

    var items = [UIBarButtonItem]()

    items.append(
    UIBarButtonItem(customView: anonymousButton)
    )
    items.append(
        UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil)
    )
    items.append(
        UIBarButtonItem(customView: textCountLabel)
    )
    toolBar.setItems(items, animated: true)

    textFieldPost.inputAccessoryView = toolBar
}
Источник
rmaddy
8 апреля 2018 в 02:43
0

Метка недостаточно велика для более длинного текста.

Ответы (1)

avatar
Razib Mollick
8 апреля 2018 в 02:47
1

Когда вы обновляете свой textCountLabel, также обновите размер или шрифт, чтобы он соответствовал тексту в предопределенном пространстве. см. пример кода.

textCountLabel.text =  yourUpdatedString
textCountLabel.sizeToFit()