问题:当一个部分展开时,部分标题中的箭头会旋转以指向上方。当我点击一个单元格时,箭头开始指向下方并顺时针旋转指向上方(箭头“抽动”)。
如何摆脱箭头的“抽搐”?我希望箭头在部分展开时向上,在部分折叠时向下。
CollapsibleFilterTableViewHeader
func setExpanded(expanded: Bool) {
//Get angle of arrow (0.0 for pointing up or 180.0 for pointing down)
let rad: Double = atan2( Double(arrowImageView.transform.b), Double(arrowImageView.transform.a))
let deg: CGFloat = CGFloat(rad) * (CGFloat(180) / CGFloat.pi )
if (expanded && deg == 0.0) {
arrowImageView.rotate(.pi)
}
}
过滤器视图控制器
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
header.setExpanded(expanded: filterSection.isExpanded)
header.delegate = self
return header
}
func toggleSection(header: CollapsibleFilterTableViewHeader, section: Int) {
let isExpanded = !filterSection.isExpanded
// Toggle isExpanded
filterSection.isExpanded = isExpanded
header.setExpanded(expanded: isExpanded)
filtersTableView.reloadSections(NSIndexSet(index: section) as IndexSet, with: .automatic)
}
试试这个
func setExpanded(expanded: Bool) {
if (expanded) {
arrowImageView.transform = CGAffineTransform(rotationAngle: CGFloat.pi)
} else {
arrowImageView.transform = CGAffineTransform.identity
}
}
展开时设置旋转,否则提供CGAffineTransform.identity
重置
希望对你有帮助
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句