Nic*_*lli 17 keyboard textfield swiftui
我的视图中有一个 TextField,看起来像这样:
@FocusState private var keyboardFocused: Bool
VStack {
TextField("Name your item...", text: $itemName)
.focused($keyboardFocused)
...
}
Run Code Online (Sandbox Code Playgroud)
现在,这一切都嵌入到按下按钮时加载的视图中,如下所示:
Button(action: someAction, label: { ... })
.fullScreenCover(isPresented: $viewIsPresented) {
ViewWithTextField(...)
}
Run Code Online (Sandbox Code Playgroud)
我想做到这一点,以便在加载此视图时,自动激活 TextField/(聚焦?)并弹出键盘。我怎样才能做到这一点?
Yrb*_*Yrb 17
只需将您的设置@FocusState
为并将其包装true
在. 需要延迟,因为视图必须在更改之前出现在屏幕上,否则它将无法工作。.onAppear
DispatchQueue.main.asyncAfter
@FocusState
VStack {
TextField("Name your item...", text: $itemName)
.focused($keyboardFocused)
.onAppear {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
keyboardFocused = true
}
}
...
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7545 次 |
最近记录: |