【发布时间】:2020-08-09 20:00:03
【问题描述】:
在 SwiftUI 中有没有办法给任何视图对象一个固定的位置,这样当视图的其余部分滚动时它就不会移动?
【问题讨论】:
-
是的,但您的问题尚不清楚。请添加更好的解释和一些代码来澄清您的要求。
在 SwiftUI 中有没有办法给任何视图对象一个固定的位置,这样当视图的其余部分滚动时它就不会移动?
【问题讨论】:
VStack.init {
VStack.init(alignment: .center, spacing: 0, content: {
Text("UnScrollable")
}).padding()
ScrollView.init {
VStack {
Text("Scrollable")
}
}
}
你需要在第一个 VStack 上设置你的框架,因为如果 vstack 需要比当前高度分辨率更多的空间,你的滚动视图将不会在屏幕上可见。
如果您需要固定位置,例如浮动按钮
你需要使用这个逻辑ZStack -> VStack/View With position -> ScrollView 你需要带有自定义位置的按钮才能实现这一点,
var body: some View {
GeometryReader.init { reader in
ZStack {
ScrollView.init {
VStack {
Text.init("Hello?")
Rectangle.init().foregroundColor(.orange).frame(width: reader.size.width, height: 1024, alignment: .center)
}
}
VStack.init {
Text("wakwkakwkaw").position(.init(x: reader.size.width - 100, y: reader.size.height - 100))
}
}
}
}
【讨论】: