繁体   English   中英

将一些 Objective-C 代码转换为 Swift

[英]Converting some Objective-C code to Swift

我试图将一些 Objective-C 代码转换为 Swift,但遇到了问题。

代码如下:

@property (nonatomic, strong) NSMutableDictionary* loadedNativeAdViews;
@synthesize loadedNativeAdViews;

...

loadedNativeAdViews = [[NSMutableDictionary alloc] init];

...

nativeAdView = [loadedNativeAdViews objectForKey:@(indexPath.row)];

我将如何快速写这个?

NSDictionary桥接到 Swift 本地类Dictionary ,因此您可以在 Objective-C 中使用NSDictionary任何地方使用它。 有关这方面的更多信息,请查看使用 Cocoa 数据类型Apple 文档。

Swift 是类型安全的,因此您必须在字典中指定用于键和值的元素类型。

假设您使用Int作为键将UIView存储在 Dictionary 上:

// Declare the dictionary
// [Int: UIView] is equivalent to Dictionary<Int, UIView>
var loadedNativeAdViews = [Int: UIView]()

// Then, populate it
loadedNativeAdViews[0] = UIImageView() // UIImageView is also a UIView
loadedNativeAdViews[1] = UIView()

// You can even populate it in the declaration
// in this case you can use 'let' instead of 'var' to create an immutable dictionary
let loadedNativeAdViews: [Int: UIView] = [
    0: UIImageView(),
    1: UIView()
]

然后访问存储在字典中的元素:

let nativeAdView = loadedNativeAdViews[indexPath.row]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM