2014-10-08 3 views
1

Эй, ребята, я пытаюсь изменить альфа taxtLabel по умолчанию из UITableView, когда таблица прокручивается, но я получаю эту ошибку:Как анимировать альфа textLabel в UITableView?

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 
     }) 
    } 
} 

ответ

6

Добавить пустой return заявление в конце закрытия

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

Вы используете компактный (укороченный) закрывающий версия, которая имеет имп законный возврат. Что происходит, что ваш код считывается компилятор как:

return cell.textLabel??.alpha = 0.0 

и что не соответствует закрывающей подписи, следовательно, ошибку компиляции. Добавление оператора return делает его явным, что замыкание не имеет возвращаемого значения.

+0

добавил бы, что ', завершение: nil' часть метода animateWithDuration также не имеет значения? Мои ярлыки все, кажется, оживляют их альфа-штраф с включенной частью и явным возвратом ... Или я чего-то не хватает? ха-ха –

Смежные вопросы