文字列表显示 (选中状态)

195 阅读1分钟

点选的文字变成红色

先在 struct xxx: View 中创建一个属性包装器

 @State private var selectedIndex = 0

用 onTapGesture 来触发点选效果,用三元运算符改变文字颜色

ForEach(0 ..< TITLES.count, id:\.self) { index in
     Text(TITLES[index])
          .foregroundColor(self.selectedIndex == index ? .red : nil)
                   .onTapGesture {
                        self.selectedIndex = index
                   }
}