如何在 SwiftUI 中更改滚动视图的滚动方向?

Posted

技术标签:

【中文标题】如何在 SwiftUI 中更改滚动视图的滚动方向?【英文标题】:How do I change scrollview's scroll direction in SwiftUI? 【发布时间】:2019-06-28 06:58:55 【问题描述】:

我试图用图像和文本实现垂直滚动,但我无法实现。

我在 Xcode beta 1 和 2 上都试过了。

【问题讨论】:

SwiftUI ScrollView only scroll in one direction的可能重复 【参考方案1】:

尝试将TextImage 包装在VStack 中,并确保ScrollView 内有足够的内容超出其范围(在正确的方向 - 在您的情况下垂直) :

ScrollView 
    VStack 
        ForEach (1...100) _ in
            Image(systemName: "circle.fill")
            Text("my text")
        
    


您可以像这样在 Playground 中轻松尝试:

import SwiftUI
import PlaygroundSupport

struct LiveView : View 
    var body: some View 
        ScrollView 
            VStack 
                ForEach (1...100) _ in
                    Image(systemName: "circle.fill")
                    Text("Some text")
                
            
        
    


PlaygroundPage.current.liveView = UIHostingController(rootView: LiveView())

【讨论】:

以上是关于如何在 SwiftUI 中更改滚动视图的滚动方向?的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI List 在任何视图更改时重置滚动

如何更改 UIScrollView 中的滚动方向?

SwiftUI ScrollView 垂直和水平滚动

SwiftUI/UIKit:水平滚动视图缩放视图

如何在 SwiftUI 中查找滚动视图内容是不是已到达内容的末尾

如何在 Swiftui 的主视图底部的滚动视图中放置一个非粘性按钮? Spacer 在滚动视图中似乎没有效果