首页 > 解决方案 > 如何在 tvOS 中使 SwiftUI 列表可滚动

问题描述

我有一个List内容,当我构建到 Apple Tv 时,我无法滚动到List.

我在行上尝试了焦点,List但我似乎无法让列表滚动。我也List用a替换了ScrollView无济于事。

List(self.someData) { data in
     SomeListRow(data: data)
}
.shadow(radius: 5)
.focusable(true)

List(self.someData) { data in
     SomeListRow(data: data)
      .focusable(true)

}
.shadow(radius: 5)

标签: listviewscrollscrollviewswiftuitvos

解决方案


tvOS 上的 SwiftUI 有一个错误,如果您在某物上设置阴影,则其中的任何组件都不会接收用户输入事件,例如焦点。不过有一个简单的解决方法,只需在背景图层上设置阴影即可。

.background(
    Color.white
        .shadow(radius: 5)
)

推荐阅读