我想通过写入来访问swift 4.1中的视图子层:
for layer : CALayer in myView.layer.sublayers {
// Code
}
Run Code Online (Sandbox Code Playgroud)
但得到错误:
输入'[CALayer]?' 不符合协议'序列'
这是否意味着CALayerfor循环无法访问?
Mar*_*n R 10
该sublayers属性是一个可选数组(默认情况下nil).你必须先解开它,例如使用可选的绑定:
if let sublayers = myView.layer.sublayers {
for layer in sublayers {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
或者使用可选链接和forEach:
myView.layer.sublayers?.forEach { layer in
// ...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1148 次 |
| 最近记录: |