gpt4 book ai didi

swift4 - Swift 4 无法将类型 '[String : AnyObject]?' 的值转换为预期的参数类型 '[NSAttributedStringKey : Any]?'

转载 作者:行者123 更新时间:2023-12-02 07:08:23 25 4
gpt4 key购买 nike

我刚刚更新到 Xcode 9 并将我的应用程序从 swift 3 转换为 swift 4。我有一些图表使用字符串来标记轴和其他变量。所以我有一个 MoneyAxisString =“Money”。以前我可以使用以下代码绘制它们:

moneyAxisString.draw(in: CGRect(x: CGFloat(coordinateXOriginLT + axisLength/3), y: CGFloat(coordinateYOriginRT + axisLength + 5 * unitDim), width: CGFloat(300 * unitDim), height: CGFloat(100 * unitDim)), withAttributes: attributes as? [String : AnyObject])

其中属性是定义如下的字典

 attributes = [
NSAttributedStringKey.foregroundColor: fieldColor,
NSAttributedStringKey.font: fieldFont!,
NSAttributedStringKey.paragraphStyle: style

]

现在我的应用程序无法编译,并且我收到消息:

无法转换“[String : AnyObject]”类型的值?预期参数类型“[NSAttributedStringKey : Any]?”

最佳答案

这是类型不匹配:[String : AnyObject] 显然不是 [NSAttributedStringKey : Any]

⌥-单击 NSAttributedStringKey 上的 以查看声明。

<小时/>

解决方案是将属性声明为

var attributes = [NSAttributedStringKey : Any]()

删除向下转换

 ..., withAttributes: attributes)

并且写得简单

attributes = [.foregroundColor: fieldColor,
.font: fieldFont!,
.paragraphStyle: style]

关于swift4 - Swift 4 无法将类型 '[String : AnyObject]?' 的值转换为预期的参数类型 '[NSAttributedStringKey : Any]?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46323006/

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