在 UICollectionViewCell 中按下一个按钮会影响其他按钮
Pressing a button inside UICollectionViewCell affects other buttons
我正在尝试在按下 UIcollectionviewCell
时为按钮设置动画。
我已经在我的 CustomCell
class 中设置了我的 IBAction
并且当我点击一个单元格内的按钮时动画开始。
这里的问题是如果我滚动 UICollectionView
其他按钮会受到动画的影响。我认为刷新 indexPath
是个问题,但我该如何避免呢?
@IBAction func actionBtn(sender: UIButton) {
UIView.animateWithDuration(0.5, animations: {
sender.transform = CGAffineTransformMakeScale(2, 2)
sender.alpha = 0
})
}
这是tableView重用的问题,新的按钮状态被其他cell重用了,你可以在你的tableView数据源中使用一个属性来标记按钮的状态,这样可以确保不会出现重用问题,记住当你在tableView cell中改变一个视图的状态时,你也应该确保tableView dataSouce做出相应的记录;
在您的 collectionView(_:cellForItemAtIndexPath:)
中,您需要重置单元格按钮的变换和 alpha。
我正在尝试在按下 UIcollectionviewCell
时为按钮设置动画。
我已经在我的 CustomCell
class 中设置了我的 IBAction
并且当我点击一个单元格内的按钮时动画开始。
这里的问题是如果我滚动 UICollectionView
其他按钮会受到动画的影响。我认为刷新 indexPath
是个问题,但我该如何避免呢?
@IBAction func actionBtn(sender: UIButton) {
UIView.animateWithDuration(0.5, animations: {
sender.transform = CGAffineTransformMakeScale(2, 2)
sender.alpha = 0
})
}
这是tableView重用的问题,新的按钮状态被其他cell重用了,你可以在你的tableView数据源中使用一个属性来标记按钮的状态,这样可以确保不会出现重用问题,记住当你在tableView cell中改变一个视图的状态时,你也应该确保tableView dataSouce做出相应的记录;
在您的 collectionView(_:cellForItemAtIndexPath:)
中,您需要重置单元格按钮的变换和 alpha。