swift - 如何在 UITableView 中为 textLabel 的 alpha 设置动画?

标签 swift ios8 uiviewanimation

嘿伙计们,当表格滚动时,我试图从 UITableView 更改默认 taxtLabel 的 alpha,但我收到此错误:

Cannot invoke 'animateWithDuration' with an argument list of type '(FloatLiteralConvertible, animations: () -> () -> $T2)'

我的代码是这样的:

override func scrollViewDidScroll(scrollView: UIScrollView) {
    for cell in tableView.visibleCells() {
        UIView.animateWithDuration(0.5, animations: {
            cell.textLabel??.alpha = 0.0
        })
    }
}

最佳答案

在闭包末尾添加一个空的return语句

UIView.animateWithDuration(0.5, animations: {
    cell.textLabel??.alpha = 0.0
    return // <== add this
})

您正在使用具有隐式返回的紧凑(缩短)闭包版本。发生的情况是您的代码被编译器读取为:

return cell.textLabel??.alpha = 0.0

这与闭包签名不匹配,因此出现编译错误。添加 return 语句可以明确表示闭包没有返回值。

关于swift - 如何在 UITableView 中为 textLabel 的 alpha 设置动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26263973/

相关文章:

ios - 每次按下返回键时,使 UITextField 清除内容

uitableview - iOS 8中的自定尺寸(动态高度)单元格-如果没有自定义UITableViewCell,是否可能?

swift - 我在 void 函数错误中有一个意外的非 void 返回值?

javascript - WKWebView evaluateJavaScript 不适用于 youtube 嵌入式视频网址

iOS 如何将逗号分隔的 Array 对象转换为字符串?

ios - UIView 的动画退出

ios - 为什么在添加 View 后立即启动时 UIView 动画不起作用?

ios - NSLayoutConstraint,从原点更改常量动画,不是我设置的

ios - 比较数组中的对象并将相等的值放入单独的新对象中

xcode swift : how to display a website as pop-over