问题标签 [swiftui-list]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swiftui - 是否可以以仅将其下方的项目向下推而不将其上方的项目向上推的方式填充 VStack 中的项目?
标题有点难用,但这是我的情况。我有一个 VStack,我需要为在堆栈中被点击的项目下方形成的间隙设置动画。
例如,我尝试将 .padding(.bottom, isTapped ? 50 : 0) 添加到项目中,但它不会产生所需的结果。例如,如果项目 X 是我点击的项目,这就是我使用此方法得到的行为
基本上,正如我试图说明的那样,它向上推动 X 上方的项目以及向下推动其下方的项目。
有什么办法可以去做我想做的事吗?一种方法来修复 X 和它上面的项目,以便只有下面的项目会移动?
编辑:这是一个更真实的示例,当点击中间项目时,会导致在其下方添加填充,但不幸的是,这不仅仅将前 2 个保留在原处并将第三个向下推。但是它将前两个向上移动,第三个向下移动。(此外,填充也不会像下面的示例所示那样放置,而是在项目视图本身中,如果这会有所不同的话)
swift - Require a SwitftUI View in a protocol without boilerplate
[ Ed: Once I had worked this out, I edited the title of this question to better reflect what I actually needed. - it wasn't until I answered my own question that I clarified what I needed :-) ]
I am developing an App using SwiftUI on IOS in which I have 6 situations where I will have a List of items which I can select and in all cases the action will be to move to a screen showing that Item.
I am a keen "DRY" advocate so rather than write the List Code 6 times I want to abstract away the list and select code and for each of the 6 scenarios I want to just provide what is unique to that instance.
I want to use a protocol but want to keep boilerplate to a minimum.
My protocol and associated support is this:
which means I can then just write:
which isn't bad but I feel I ought to be able to go further.
Having to write:
with
still seems cumbersome to me. In each of my 6 cases I'd be writing very similar code. I feel like I ought to be able to just write:
because that's the unique bit. But that certainly won't compile.
And then the same for the Detail.
I can't get my head around how to simplify further. Any ideas welcome?
ios - Swift UI 列表:点击单元格时打开外部 URL
我正在尝试在轻按URL
其中一个单元格时打开 a 。List
我尝试将修饰符添加onTapGesture
到单元格本身,然后调用UIApplication.shared.open(url)
,但这仅在点击正确在单元格视图的元素上(而不是在单元格的背景上)时才有效。
我还尝试将背景视图(矩形)添加到不透明度为 0.01 的单元格中,但尽管这可行,但尽管不透明度很低,但矩形仍然非常明显。
是否有任何解决方法可以使整行可点击?
swiftui - SwiftUI - 点击按钮更改 VStack 的背景颜色
当我点击 OrderButton 时,所有 VStack 的背景颜色都变为灰色,然后像分配了单击事件一样返回。我怎样才能防止这种情况?
通过使用ScrollView并添加更多参数来自动调整Text大小解决了该问题:
swiftui - SwiftUI - 取决于元素计数的可调整大小的列表高度
我在动态更改依赖于元素计数的列表高度时遇到了一些麻烦。
我尝试了这个解决方案,但没有奏效。
swift - 如果数组是 ObservableObject 的成员,如何绑定数组和 List?
我想创建MyViewModel
从网络获取数据然后更新结果数组。MyView
应该订阅$model.results
并显示List
填充结果。
不幸的是,我收到有关“没有更多上下文的表达式类型不明确”的错误。
这种情况如何正确使用ForEach
?
PS如果我用一切正常替换模型@State var results: [String]
,但我需要单独class MyViewModel: ObservableObject
用于我的目的
ios - 列表中的 SwiftUI ScrollView 具有可怕的性能影响
我有一个非常简单的 SwiftUI 视图,其中列出了一堆文本:
这段代码似乎工作正常,并为我提供了流畅的滚动性能。
如果我更改它以使 HStack 位于水平滚动的 ScrollView 内:
当我在列表中上下滚动时,性能受到了巨大的影响,内存似乎无限增长。内存调试器中没有任何泄漏。
我想知道是否有人知道为什么性能影响如此之大,以及是否有任何解决方法。
更新:
HStack 和 Text 似乎与问题无关,即使是 scrollView 内的 Spacer 也会触发问题。