Почему основной вид сдвигается вверх, когда текстовое поле в листе становится сфокусированным? Для меня это кажется визуально неверным независимо от контекста, и применение .IgnoressaFearea (.Keyboard) к vStack , похоже, не решает проблему.
import SwiftUI
struct ContentView: View {
let colors: [Color] = [.green, .red, .blue, .pink, .purple]
@State private var sheetShown = false
@State private var q = ""
var body: some View {
NavigationStack {
VStack {
ForEach(colors, id: \.self) { color in
Rectangle()
.fill(color)
.frame(height: 120)
}
Spacer()
Button { sheetShown = true }
label: { Text("Show Sheet") }
.buttonStyle(.borderedProminent)
}
.ignoresSafeArea(.keyboard)
.padding()
}
.sheet(isPresented: $sheetShown) {
Text("hello")
TextField("Search", text: $q)
}
}
}
#Preview {
ContentView()
}
< /code>
Без фокусировки на вводе:
< /p>
с фокусировкой на входе (см. Зеленый прямой выставку, высаживание с конца):
. src = "https://i.sstatic.net/pl2yjmfg.png" width = "300"/>
Подробнее здесь: https://stackoverflow.com/questions/796 ... with-sheet
Как использовать IgnorseSsafearea с листом? ⇐ IOS
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение