【问题标题】:How to give a view a fixed position so it is not affected by scroll in SwiftUI如何为视图提供固定位置,使其不受 SwiftUI 中滚动的影响
【发布时间】:2020-08-09 20:00:03
【问题描述】:

在 SwiftUI 中有没有办法给任何视图对象一个固定的位置,这样当视图的其余部分滚动时它就不会移动?

【问题讨论】:

  • 是的,但您的问题尚不清楚。请添加更好的解释和一些代码来澄清您的要求。

标签: ios swift xcode swiftui


【解决方案1】:
      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))
            }
        }
    }
}

【讨论】:

  • 你可以在 ScrollView 上做同样的事情
猜你喜欢
  • 2016-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-18
  • 2017-11-28
相关资源
最近更新 更多