微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

垂直排列 LazyVGrid 元素而不是水平排列 - SwiftUI

如何解决垂直排列 LazyVGrid 元素而不是水平排列 - SwiftUI

我有一个 Lazyvstack,它会根据其中的元素数量垂直增长。然而,当它生成时,元素从左到右,然后向下到下一行等。我希望它垂直排序元素,然后当它到达列的底部时,移动到下一个并开始做同样的事情再次。这可能吗?

这是我目前的代码

struct Player: Identifiable{
    var id = UUID()
    
    var name: String
}

var players = [Player(name: "UnkNown"),Player(name: "Player 1"),Player(name: "Player 2"),Player(name: "Player 3")]... this carries on for 23 players

let columns = [
    GridItem(.flexible(),spacing: 0),GridItem(.flexible(),spacing: 0)
]

vstack(spacing: 10){
    LazyVGrid(columns: columns,spacing: 10){
        ForEach(players){player in
            Text(player.name)
                .padding(.trailing)
        }
    }
}
.padding(.leading)

我想我可能需要一个 LazyHGrid 来代替,但传入的玩家数量可能会发生变化,所以我希望它具有响应性。有什么想法吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。