我需要将一个int转换为一个对象,在Objective-C中我可以执行以下操作
[row.cellConfig setObject:@(UITextFieldViewModeAlways) forKey:@"textField.rightViewMode"];
什么是Swift等价物?
答案 0 :(得分:3)
Swift相当于UITextFieldViewModeAlways
UITextFieldViewMode.Always
,这是一个枚举值:
enum UITextFieldViewMode : Int {
case Never
case WhileEditing
case UnlessEditing
case Always
}
您使用.rawValue
获取其基础整数值。
整数自动被桥接"通过后NSNumber
使用Objective-C参数(和Swift字符串)的函数
桥接到NSString
)。
所以这应该有效:
row.cellConfig.setObject(UITextFieldViewMode.Always.rawValue,
forKey: "textField.rightViewMode")
有关详细信息,请参阅Using Swift with Cocoa and Objective-C。
答案 1 :(得分:0)
使用
row.cellConfig.setObject(NSNumber(UITextFieldViewModeAlways), forKey:"textField.rightViewMode")
答案 2 :(得分:0)
您需要为该int创建一个NSNumber对象。
NSNumber *intObj = [NSNumber numberWithInt:num];