[背景]
已有OC代码:
NSArray*buttons = [tabButtonsContainerView subviews]; |
想要转换为Swift代码。
涉及到,如何把
NSArray *buttons
改写为Swift中,定义指针型的,引用的,数组变量
[解决过程]
1.搜:
swift define nsarray reference
swift nsarray reference definition
swift nsarray pointer definition
swift variable reference definition
swift pointer
参考:
2.搜:
swift UnsafePointer
参考:
去试试:
let buttons:UnsafePointer<NSArray> =tabButtonsContainerView?.subviews |
好像对于定义的话,这么写就是可以了。
[总结]
此处,定义数组指针的话,可以写成:
对于constant,不可变的指针:
let arrayValuePointer:UnsafePointer<数组类型> |
对于可能被修改的,可变的指针:
let arrayValuePointer:UnsafeMutablePointer<数组类型> |
比如此处的:
let buttons:UnsafePointer<NSArray> |
当然,又会出现另外的问题:
[总结]
最终是把OC代码:
NSArray *buttons = [tabButtonsContainerView subviews];
改为swift的代码:
var buttons:UnsafeMutablePointer<[UIView]> = UnsafeMutablePointer<[UIView]>((tabButtonsContainerView!.subviews))
才可以。
转载请注明:在路上 » [已解决]Swift中如何定义NSArray数组指针类型变量