IOS 16.4, нижний лист Swiftui иногда игнорирует презентацииIOS

Программируем под IOS
Ответить
Anonymous
 IOS 16.4, нижний лист Swiftui иногда игнорирует презентации

Сообщение Anonymous »

Из iOS 16.4 В Swiftui мы можем использовать модификатор .sheet с .presentationDetents , чтобы указать высоту нижнего листа. Мы можем дополнительно использовать .presentationBackgroundinterAction , чтобы позволить взаимодействовать с представлением, стоящим за листом. Ошибка, что иногда при переходе с одного выбора на другой лист полностью игнорирует модификаторы .presentationDetents и. Он просто показывает как модал полной высоты без какого -либо фонового взаимодействия.
import SwiftUI
import PlaygroundSupport

struct ContentView: View {
let choices = [nil, "One", "Two", "Three"]
@State var selection: String?

var body: some View {
VStack {
Picker("Choose", selection: $selection) {
ForEach(choices, id: \.self) { choice in
Text(choice ?? "None")
.tag(choice)
}
}
.padding()

Spacer()
}
.pickerStyle(.segmented)
.sheet(item: $selection) { choice in
Text("Item selected: \(choice)")
.presentationDetents([.medium])
.presentationBackgroundInteraction(
.enabled(upThrough: .medium)
)
}
}
}

extension String: Identifiable {
public var id: String { self }
}

PlaygroundPage.current.setLiveView(ContentView().frame(width: 320, height: 568))
< /code>
Вот несколько скриншотов: < /p>




no modal < /th>
modal < /th>
< /th> < / /th>

< /th>

< /th> < /th>
< /br />
< /th> нет. /> < /tr>
< /thead>


< /td>
< /td>
< /td>




наблюдения

скрывая лист (нажав 'none'), прежде чем выбрать другой выбор никогда . Прыгая непосредственно с «One 'to' Two». Будьте проблемой с выбором листа, не проходящей через состояние NIL, прежде чем переодеться в другой выбор, что для меня является совершенно обоснованной вещью, чтобы хотеть сделать (я не хочу, чтобы лист исчезал, а затем повторно оказал). /> Заранее спасибо за любые идеи! < /p>

Подробнее здесь: https://stackoverflow.com/questions/770 ... iondetents
Ответить

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

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

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

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

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