Отображение контента в ScrollView с конца

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

В SwiftUI компонент ScrollView автоматически начинает прокрутку сверху. Однако если вы хотите создать интерфейс, аналогичный приложению "Сообщения" от Apple, вы можете настроить ScrollView так, чтобы прокрутка начиналась снизу. Для этого используется модификатор scrollPosition() с начальной привязкой к нижней части (.bottom).

Ниже представлен пример, где в ScrollView показаны 50 текстовых элементов. Здесь указано, что прокрутка должна начинаться снизу, а не сверху:

ScrollView {
    ForEach(0..<50) { index in
        Text("Item \(index)")
            .frame(maxWidth: .infinity)
            .padding()
            .background(.blue)
            .clipShape(.rect(cornerRadius: 25))
    }
}
.scrollPosition(initialAnchor: .bottom)

Если ваш пользовательский интерфейс каким-то образом изменяется без прокрутки пользователя - например, если появляется клавиатура или вы меняете размер области прокрутки, то позиция прокрутки останется прикрепленной к нижней части. Однако, если пользователь самостоятельно меняет позицию прокрутки, она будет свободно прокручиваться, как обычно.

Совет: параметр initialAnchor принимает любую точку типа UnitPoint, поэтому вы можете использовать .trailing для начала горизонтальной прокрутки с правого края или любое точное значение, которое вам нужно для вашего интерфейса.

Источник: https://habr.com/ru/articles/745118/


Интересные статьи

Интересные статьи

Лето, к сожалению, почти подошло к концу. Но для любителей DIY-систем есть, чем отвлечься от мыслей о море и тепле — в этом помогут новые одноплатники. Производители продолжают выпускать интересные ...
Эксцентричная презентация Илона Маска раскрыла правду множества демонстраций технических новинок: они представляют собой не что иное, как наброски видения будущего, удерживаемые вместе цифрой изоленто...
В Brave приватность — не фича, а требование, вокруг которого построен проект. Наш браузер это демонстрирует в полной мере: мы блокируем трекеры, не даем отслеживать цифро...
Наверняка каждый читатель Хабра хотя бы раз в жизни мечтал прикоснуться к миру кино, стать его частью. В этом посте я расскажу о том, как консультантам из отдела информационной безопа...
Не так давно я столкнулся с довольно простой и одновременно интересной задачей: реализация read-only терминала в веб приложении. Интереса задаче придавали три важных аспекта: поддержка основны...