gpt4 book ai didi

xcode - 无法将类型 'UInt32!' 的值转换为预期参数类型 'UIFontDescriptorSymbolicTraits'

转载 作者:行者123 更新时间:2023-11-30 10:05:51 26 4
gpt4 key购买 nike

我仍在尝试将 TextKit 从 Objective-C 转换为 Swift。它让我(和你?)疯狂:-(修复了一些问题后,现在我在使用粗体(和斜体)字体时遇到了问题:

enter image description here

func addOrRemoveFontTraitWithName(traitName: String, andValue traitValue: UInt32, andRange selectedRange: NSRange) {

let currentAttributesDict : NSDictionary! = self.textView.textStorage.attributesAtIndex(selectedRange.location, effectiveRange: nil)
let currentFont : UIFont = currentAttributesDict .objectForKey(NSFontAttributeName) as! UIFont
...
var existingTraitsWithNewTrait : UInt32! = nil
var changedFontDescriptor : UIFontDescriptor! = nil
if fontNameAttribute.rangeOfString(traitName).location == NSNotFound {
existingTraitsWithNewTrait = fontDescriptor.symbolicTraits.rawValue | traitValue
changedFontDescriptor = fontDescriptor.fontDescriptorWithSymbolicTraits(UIFontDescriptorSymbolicTraits.TraitBold)
} else {
existingTraitsWithNewTrait = fontDescriptor.symbolicTraits.rawValue & ~traitValue
changedFontDescriptor =
fontDescriptor.fontDescriptorWithSymbolicTraits(existingTraitsWithNewTrait) // !!!!
}

在最后一行我收到错误无法转换“UInt32!”类型的值预期参数类型“UIFontDescriptorSymbolicTraits”

我必须将 UInt32 转换为 UIFontDescriptorSymbolicTraits 吗?另一种方法是使用.rawValue。但我不知道该怎么做。 :-(

欢迎任何帮助!

最佳答案

尝试用UIFontDescriptorSymbolicTraits(rawValue:existingTraitsWithNewTrait)代替错误行中的existingTraitsWithNewTrait

关于xcode - 无法将类型 'UInt32!' 的值转换为预期参数类型 'UIFontDescriptorSymbolicTraits',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36015218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com