от
Я делаю массив для диапазона UISlider и помещаю каждое значение на ярлык под ползунком, но если я изменю экран iPhone (5s, 6s, 8, Xr) метка не показывает правильное положение значений UISlider. Как мне соединить диапазон значений массива UISlider с меткой ниже для каждого экрана iPhone? Ожидаемые результаты Иерархия просмотра отладки Существует способ настройки Auto Layout независимо от экрана на iphone. Где вы видите Easy.Layout, то есть EasyPeasy Auto-Layout - это то же самое, что и документация Apple. Ограничения Auto Layout.
func setupLabels() {
    let values = [0, 3.7, 11, 22, 43, 50, 100]
    values.forEach({
        let sliderValuesLabel = UILabel()
        if $0 == values.first {
            sliderValuesLabel.text = "ALLE"
            wrapperView.addSubview(sliderValuesLabel)
            sliderValuesLabel.easy.layout(

                Top(15).to(uislider),
                Leading().to(uislider, .leading), // Left Position
                Bottom(1)
            )

        } else if $0 == values.last {
            sliderValuesLabel.text = "\(Int($0)) "
            wrapperView.addSubview(sliderValuesLabel)
            sliderValuesLabel.easy.layout(
                Trailing().to(uislider, .trailing), // Right Position
                Top(15).to(uislider),
                Bottom(1)
            )

        } else  {
            sliderValuesLabel.text = "\(Int($0))"
            wrapperView.addSubview(sliderValuesLabel)

            let thumbRect = uislider.thumbRect(forBounds: uislider.bounds,
                                               trackRect: uislider.trackRect(forBounds: uislider.bounds),
                                               value: uislider.value)
            let thumRectToView = uislider.convert(thumbRect, to: uislider ) // Convert

            sliderValuesLabel.easy.layout(
                Top(15).to(uislider),
                Bottom(1),
                CenterX(thumRectToView.midX)

            )
        }
    })

}
             

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

1 Ответ

0 голосов
от
Вам нужно будет установить ограничения на метку с помощью Auto-Layout. Это будет держать его в фиксированном положении на всех устройствах.     
Добро пожаловать на сайт ByNets, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...