Как использовать ScrollPosition(id:) для получения индекса элемента в ScrollView в iOS 17IOS

Программируем под IOS
Ответить
Anonymous
 Как использовать ScrollPosition(id:) для получения индекса элемента в ScrollView в iOS 17

Сообщение Anonymous »

Одним из новых модификаторов ScrollView, представленных в iOS 17, был .scrollPosition(id:), который позволяет нам привязывать идентификатор прокручиваемого представления. Из документации Apple мы можем:

Код: Выделить всё

@Binding var items: [Item]
@Binding var scrollPosition: Item.ID?

ScrollView {
LazyVStack {
ForEach(items) { item in
ItemView(item)
}
}
.scrollTargetLayout()
}
.scrollPosition(id: $scrollPosition)
Но предположим, что мы хотели бы, чтобы ScrollPosition представлял индекс каждого элемента в items. Например, когда мы прокручиваемся до первого элемента ItemView, значение ScrollPosition должно быть равно 0; когда мы переходим ко второму элементу ItemView, он должен быть равен 1 и так далее.
Как мы можем добиться этого в SwiftUI (с этим модификатором)?

Подробнее здесь: https://stackoverflow.com/questions/769 ... -in-ios-17
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»