将 Objective-C 代码块转换为 Swift
Converting an Objective-C block of code into Swift
我没能正确理解如何将其转换为 Swift 表示法。有人可以帮我吗?我显然需要提高我的 Objective-C 理解 :(
// Setup coach marks
NSArray *coachMarks = @[
@{
@"rect": [NSValue valueWithCGRect:(CGRect){{0,0},{45,45}}],
@"caption": @"Helpful navigation menu"
},
@{
@"rect": [NSValue valueWithCGRect:(CGRect){{10.0f,56.0f},{300.0f,56.0f}}],
@"caption": @"Document your wedding by taking photos"
}
];
我只是不确定 [{}] 是什么意思。数组中的数组?它几乎看起来像 JSON 符号或其他东西。这是什么?
谢谢!
@[a,b]
是一个包含对象 a
和 b
.
的 Objective-C 数组文字
@{akey:avalue, bkey:bvalue}
是 Objective-C 字典文字。
(CGRect){{0,0},{45,45}}
创建一个 CGRect。 In Swift CGRect(origin: CGPoint(x: 0, y: 0), size: CGSize(width: 45, height: 45))
将是直接翻译,尽管有更短的形式来做同样的事情。作为一个结构,它需要包装在一个 NSValue
对象中以放入 Objective-C 集合中。
我没能正确理解如何将其转换为 Swift 表示法。有人可以帮我吗?我显然需要提高我的 Objective-C 理解 :(
// Setup coach marks
NSArray *coachMarks = @[
@{
@"rect": [NSValue valueWithCGRect:(CGRect){{0,0},{45,45}}],
@"caption": @"Helpful navigation menu"
},
@{
@"rect": [NSValue valueWithCGRect:(CGRect){{10.0f,56.0f},{300.0f,56.0f}}],
@"caption": @"Document your wedding by taking photos"
}
];
我只是不确定 [{}] 是什么意思。数组中的数组?它几乎看起来像 JSON 符号或其他东西。这是什么?
谢谢!
@[a,b]
是一个包含对象 a
和 b
.
@{akey:avalue, bkey:bvalue}
是 Objective-C 字典文字。
(CGRect){{0,0},{45,45}}
创建一个 CGRect。 In Swift CGRect(origin: CGPoint(x: 0, y: 0), size: CGSize(width: 45, height: 45))
将是直接翻译,尽管有更短的形式来做同样的事情。作为一个结构,它需要包装在一个 NSValue
对象中以放入 Objective-C 集合中。