大佬教程收集整理的这篇文章主要介绍了SwiftUI - 当内容小于边界时,如何使 ScrollView 不反弹,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试制作我的 ScrollVIEw
:
这是我的代码:
struct ContentVIEw: VIEw {
init() {
UIScrollVIEw.appearance().alwaysBounceVertical = false
}
var body: some VIEw {
ScrollVIEw {
Rectangle()
.fill(color.bluE)
.frame(height: 300) /// is smaller than the screen
.padding()
}
}
}
我尝试设置 UIScrollView.appearance().alwaysBounceVertical = false
,但滚动视图仍然反弹:
如果我执行 UIScrollVIEw.appearance().bounces = false
,它会停止弹跳。但是,如果我让矩形比屏幕高,它也会停止弹跳(这是我不想要的)。
不反弹(耶!) | ...但当内容溢出屏幕时不会反弹 |
---|---|
如何禁用弹跳,但仅当内容小于滚动视图的边界时?
好吧,当使用 SwiftUI-Introspect
时,将 alwaysBounceVertical
设置为 false
确实有效。我不确定为什么像你那样设置外观不起作用...
无论如何,这里有一些工作示例代码:
struct ContentView: View {
@State private var count = 5
var body: some View {
VStack {
Picker("Count",SELEction: $count) {
Text("5").tag(5)
Text("100").tag(100)
}
.pickerStyle(SegmentedPickerStyle())
ScrollView {
VStack {
ForEach(1 ... count,id: \.self) { i in
Text("Item: \(i)")
}
}
.frame(maxWidth: .infinity)
}
.introspectScrollView { scrollView in
scrollView.alwaysBounceVertical = false
}
}
}
}
结果(不幸的是你看不到我的鼠标试图拖动较短的列表):
以上是大佬教程为你收集整理的SwiftUI - 当内容小于边界时,如何使 ScrollView 不反弹全部内容,希望文章能够帮你解决SwiftUI - 当内容小于边界时,如何使 ScrollView 不反弹所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。