开发天气应用与Flappy Bird游戏克隆
一、天气应用开发
1.1 视图渲染
1.1.1 小时天气预报视图渲染
在 WeatherHourlyForecastView 中,渲染函数会遍历所有子视图并调用其 render() 函数:
// MARK: Render
func render(weatherConditions: Array<WeatherCondition>){
zip(forecastCells, weatherConditions).forEach {
$0.render($1)
}
}
这里的 zip() 函数源自Haskell,它将两个数组合并为一个包含元组的数组,每个元组包含两个数组对应位置的元素。例如:
let a = [1,2,3,4]
let b = ["a","b","c","d"]
zip(a, b) // 返回 [(1,"a"),(2,"b"),(3,"c"),(4,"d")]
在 WeatherHourForecastView 中,我们还会对单个天气条件进行渲染:
// MARK: Render
extension WeatherHourForecastView
超级会员免费看
订阅专栏 解锁全文
1016

被折叠的 条评论
为什么被折叠?



