Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 当UIViewController类';s按钮被选中_Swift_Uiviewcontroller_Uicollectionview_Uilabel_Uicollectionviewcell - Fatal编程技术网

Swift 当UIViewController类';s按钮被选中

Swift 当UIViewController类';s按钮被选中,swift,uiviewcontroller,uicollectionview,uilabel,uicollectionviewcell,Swift,Uiviewcontroller,Uicollectionview,Uilabel,Uicollectionviewcell,选择文本字段下方的按钮时,如何更改顶部(例如Q1)UICollectionViewCell内标签的颜色 我只希望当前问题的标签更改其文本颜色 i、 e.如果用户正在回答问题1,当选择按钮时,Q1颜色将从橙色变为白色 请看上面的附图 我已经使用UIViewController作为UICollectionView的委托/数据源通过调用 collectionView.reloadItems(位于:[IndexPath]) 我想你有一系列的问题和一些正确/错误的标志。所以您应该有按钮选择处理程序和单元格

选择文本字段下方的按钮时,如何更改顶部(例如Q1)UICollectionViewCell内标签的颜色

我只希望当前问题的标签更改其文本颜色 i、 e.如果用户正在回答问题1,当选择按钮时,Q1颜色将从橙色变为白色

请看上面的附图


我已经使用UIViewController作为UICollectionView的委托/数据源

通过调用
collectionView.reloadItems(位于:[IndexPath])

我想你有一系列的问题和一些正确/错误的标志。所以您应该有按钮选择处理程序和单元格组合方法

@objc private func onSomeButton(_ sender: UIButton) {
    let questionNumber: Int = 999
    self.markAnswer(correct: true, atIndex: questionNumber)
    self.collectionView.reloadItems(at: [IndexPath(item: questionNumber, section: 0)])
}
然后这个调用会触发重新加载这个单元格

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: self.someDefaultRequseId, for: IndexPath)
    cell.label.textColor = self.isAnswerCorrect(at: indexPath.item) ? .white : .red
}

如果我对您的情况理解正确,您就不需要在集合视图中滚动,因此您也不需要单元的可重用性。所以你需要一个静态结构。对于这种情况,最好对静态单元格使用
UITableView
。您可以为每个单元格设置
IBOutlet
,也可以将单元格内的每个元素设置到主视图控制器中。然后在内部
toucupInside
特定按钮的操作设置标签的颜色。

谢谢!已经被困了好几个星期了!