gpt4 book ai didi

tvos - SwiftUI 和 tvOS(可聚焦)

转载 作者:行者123 更新时间:2023-12-03 03:01:21 30 4
gpt4 key购买 nike

我知道,SwiftUI 目前处于测试阶段,但我想确保正确使用 focusable。

实际上,当我在列表中向下滚动时,焦点项目会在列表向下滚动时跳过 3 或 4 行(向上滚动方向即可)。

您可以在 b4 版本中尝试使用此代码:(编辑:b5 相同)

import SwiftUI

struct TestList: Identifiable {
var id: Int
var name: String
}

let testData = [Int](0..<50).map { TestList(id: $0, name: "Row \($0)") }


struct SwiftUIView : View {
var testList: [TestList]

var body: some View {
List {
ForEach(testList) { txt in
TestRow(row: txt)
}
}
}
}

struct TestRow: View {
var row: TestList

@State private var backgroundColor = Color.clear

var body: some View {
Text(row.name)
.focusable(true) { isFocused in
self.backgroundColor = isFocused ? Color.green : Color.blue
if isFocused {
print(self.row.name)
}
}
.background(self.backgroundColor)
}
}

#if DEBUG
struct SwiftUIView_Previews : PreviewProvider {
static var previews: some View {
SwiftUIView(testList: testData)
}
}
#endif

谢谢。

最佳答案

它终于在 Xcode 11 GM 上为我工作了...

关于tvos - SwiftUI 和 tvOS(可聚焦),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57129603/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com