Swift - 函数内部函数?

时间:2018-03-12 12:44:46

标签: ios swift drawrect

关于IBInspectable / IBDesignable的精彩帖子,我正在阅读example code并且无法理解drawRect函数如何包含其他函数。有人可以解释一下吗?

override func drawRect(rect: CGRect) {

    ....

    func rectForPosition(position: CGPoint, andSize size: CGSize) -> CGRect
    {
       ....     
    }

    ....

}

1 个答案:

答案 0 :(得分:2)

rectForPosition是在drawRect范围内声明的函数。与变量相同,这意味着rectForPosition仅在drawRect内可见且可用。

因为每个language reference函数声明包含语句:

func function name(parameters) {
     statements
}

声明可以是声明:

  

声明→声明

这是一个有效的Swift代码。