我的问题:我希望用户能够从 Textfield 转到 TextField,而视图不会弹起,如下面的 gif 所示。
我的用例:我在多个子视图中有多个文本字段和文本编辑器。这些 TextField 是动态生成的,因此我希望 FocusState 成为一个单独的问题。
我在下面制作了一个 gif 示例和代码示例。
请检查一下,任何建议表示赞赏。
正如评论中所建议的,我做了一些更改,但对弹跳没有影响:
- Using Identfiable does not change the bounce
- A single observed object or multiple and a view model does not change the bounce
Run Code Online (Sandbox Code Playgroud)
我认为这是来自状态更改刷新。如果不是刷新导致跳出(正如用户在评论中建议的那样),那么是什么?使用 FocusState 时有没有办法阻止这种反弹?
重现:创建一个新的 iOS 应用程序 xcode 项目,并将内容视图替换为下面的代码正文。当用户从一个文本字段转到下一个文本字段时,它似乎会刷新视图,导致整个屏幕跳动。
代码示例
import SwiftUI
struct MyObject: Identifiable, Equatable {
var id: String
public var value: String
init(name: String, value: String) {
self.id = name
self.value = value
}
}
struct …Run Code Online (Sandbox Code Playgroud)