mer*_*yan 6 macos swift swiftui
我正在尝试创建一个TextEditors列表作为 SwiftUI 应用程序的一部分。我希望各个编辑器不要滚动,因为它们构成了一个更大的滚动列表。但是,当我将 TextEditors 添加到列表中时,它们会向下压缩并且每个视图都可以单独滚动。是否有修饰符/技巧可以让 TextEditor 始终适合其文本内容而不滚动,所以我可以实现这一点?
我正在尝试做的一个最小的例子如下:
struct ParentView: View {
var items: [Item]
var body: some View {
List(items, id: \.id) { item in
EditorView(item: item)
}
}
}
struct EditorView: View {
@ObservedObject var item: Item
var body: some View {
TextEditor(text: $item.text)
}
}
Run Code Online (Sandbox Code Playgroud)
这是在 macOS SwiftUI 应用程序中,而不是在 iOS 应用程序中,以防有任何平台差异。
编辑:正如评论中指出的那样,我尝试了这种方法Dynamic row hight contains TextEditor inside a List inside a SwiftUI但它似乎没有正常工作 - 行仍然没有正确扩展。
为了解决这个问题,我最终使用修饰符.fixedSize(horizontal: false, vertical: true)将 修复为其完整大小,然后允许SwiftUI 列表中包含 TextEditor 的动态行高度TextEditor中的解决方案在列表中按预期工作。
| 归档时间: |
|
| 查看次数: |
1687 次 |
| 最近记录: |