ios - UITableViewCell 在其上实现闪烁动画时不可点击
问题描述
实现闪烁动画时,不会对 UITableViewCell 执行任何操作,它开始闪烁很好,但不可点击或滑动。我尝试了一些解决方案,但无法修复它。代码如下。
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
cell.backgroundColor = UIColor.colorWithHexString(hexStr: "#FDFAEB")
cell.blink()
return cell
}
动画扩展代码:
extension UIView {
func blink() {
self.alpha = 0.5;
UIView.animate(withDuration: 0.7, //Time duration you want,
delay: 0.0,
options: [.curveEaseInOut, .autoreverse, .repeat],
animations: { [weak self] in self?.alpha = 1.0 },
completion: { [weak self] _ in self?.alpha = 0.8 })
}
}
请告诉我,这是什么原因,我该如何解决?
解决方案
默认情况下,动画期间禁用用户交互。您需要将该 .allowUserInteraction
选项添加到您的选项集中。
(请注意,如果您正在为视图的位置设置动画,则用户将无法在视图移动时点击它。在幕后,视图会在动画开始后立即跳转到其目标位置。它只会出现在屏幕上移动。如果你想在视图在屏幕上移动时点击它,它会复杂得多。)
推荐阅读
- python - 尝试将“2020-12-28”转换为仅一个月,例如“十二月”
- r - 来自 grepl 的“未知整理元素”
- javascript - 如何将多个文本输入复制到剪贴板
- ansible - Ansible:使用 YAML 文件中的键读取单个值
- c# - 在这种情况下不调用 GC.KeepAlive() 是否安全?
- automation - 如何用空的占位符替换完整的图像占位符?
- python - Discord 机器人只回复一次消息
- flutter - 脚本 "\gradle\flutter.gradle' line: 99" - Process 'command 'D:\flutter\bin\flutter.bat'' 以非零退出值 1 结束
- python - 将值从 php 脚本发送到 python 脚本
- graph - 使用 Microsoft Graph 在 Intune 配置策略中为新策略创建 groupPolicyDefinitionValue