错误“不能转换类型的值‘诠释’预期参数类型‘UINT’
问题描述:
var anchor = HKQueryAnchor(fromValue: Int(HKAnchoredObjectQueryNoAnchor))
我得到的红旗错误
不能转换类型的值‘诠释’预期参数类型“UINT”
我从另一个Xcode项目,这带来了没有错误此行中的其他项目复制粘贴代码(上watchOS读心脏率仅)。
任何想法?
let healthStore = HKHealthStore()
//State of the app - is the workout activated
var workoutActive = false
// define the activity type and location
var workoutSession : HKWorkoutSession?
let heartRateUnit = HKUnit(fromString: "count/min")
var anchor = HKQueryAnchor(fromValue: Int(HKAnchoredObjectQueryNoAnchor))
答
错误告诉你到底你要做什么。只要改变代码:
var anchor = HKQueryAnchor(fromValue: UInt(HKAnchoredObjectQueryNoAnchor))
您需要更改Int
为UInt
,这是HKQueryAnchor
期待。
对于我们这些编码初学者来说,这并不明显。我现在知道UInt是一个'无符号整数'。感谢Eric D,当你在输入的时候已经知道了,谢谢你的确认! –
我同意,我会更新答案。 –
@DimitriT自Vladimir发布了正确答案以来,我删除了我的评论。提示:在Xcode中,习惯在变量/方法/对象/等上执行ALT + CLICK以查看其类型和签名。在这种情况下,对于一般的学习来说,这有很大的帮助。 :) – Moritz