Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Swift 2.1中将多个选项传递给NSLineBreakMode_Swift_Cocoa_Enums - Fatal编程技术网

在Swift 2.1中将多个选项传递给NSLineBreakMode

在Swift 2.1中将多个选项传递给NSLineBreakMode,swift,cocoa,enums,Swift,Cocoa,Enums,我正在尝试在Swift中传递NSLineBreakMode的多个选项。在目标C中,这起作用: label.lineBreakMode = NSLineBreakByWordWrapping | NSLineBreakByTruncatingTail; 关于,我尝试过在常量中设置选项,如下所示: var lineBreakOptions: NSLineBreakMode = [.ByWordWrapping,.ByTruncatingTail] passageExcerpt.lineBreakM

我正在尝试在Swift中传递NSLineBreakMode的多个选项。在目标C中,这起作用:

label.lineBreakMode = NSLineBreakByWordWrapping | NSLineBreakByTruncatingTail;
关于,我尝试过在常量中设置选项,如下所示:

var lineBreakOptions: NSLineBreakMode = [.ByWordWrapping,.ByTruncatingTail]
passageExcerpt.lineBreakMode = lineBreakOptions
但我得到的一个错误是:

上下文类型“NSLineBreakMode”不能与数组文字一起使用


是否有方法为NSLineBreakMode的枚举传递多个选项?

NSLineBreakMode
enum
类型,而不是
OptionSet
类型(即使在Objective-C中)。您只能指定一个案例

在Objective-C中,表达式

 NSLineBreakByWordWrapping | NSLineBreakByTruncatingTail
工作正常,但它仅通过“或”取消原始值0和4将模式设置为
nslinebreakbytruncingtail
,请检查此项

NSLog(@"%ld", NSLineBreakByWordWrapping); // 0
NSLog(@"%ld", NSLineBreakByTruncatingTail); // 4
NSLog(@"%ld", NSLineBreakByWordWrapping | NSLineBreakByTruncatingTail); // 4
所以Swift等价物只是

label.lineBreakMode = .ByTruncatingTail