如何在swift中使用NSWritingDirectionAttributeName?

如何在swift中使用NSWritingDirectionAttributeName?

我在Obj-c中有这样的代码:

attrString = [[NSMutableAttributedString alloc] initWithString:title attributes:@{NSFontAttributeName:[UIFont fontAwesomeFontOfSize:24], NSForegroundColorAttributeName:kHJColorIcon, NSWritingDirectionAttributeName:@[@(NSWritingDirectionRightToLeft | NSTextWritingDirectionOverride)]}]; 

这是伟大的工作!

现在我需要在另一个地方使用相同的代码,但使用迅速的语言。

我尝试了几种方法,但我得到的错误。 在这里输入图像说明

关键NSWritingDirectionAttributeName期望数值,所以使用原始值

 [NSWritingDirectionAttributeName : [NSWritingDirection.LeftToRight.rawValue | NSTextWritingDirection.Override.rawValue]] 

关键NSWritingDirectionAttributeName需要Numeric值,所以在你的函数中使用rawValue ,试试这个

 let attrString = NSMutableAttributedString(string: "Karthik Test", attributes: [NSFontAttributeName: UIFont.systemFontOfSize(24), NSWritingDirectionAttributeName:[NSWritingDirection.RightToLeft.rawValue | NSTextWritingDirection.Override.rawValue]])