1

私は Swift にかなり慣れていないので、このページから歩数計アプリを作成する方法に関するチュートリアルに従っています: http://shrikar.com/ios-swift-development-step-counter-app-using-pedometer-データ/

ただし、それは少し前のことなので、更新に取り組んでいますが、あまり進んでいません。このエラーが発生し続けます:

Cannot convert value of type '(CMPedometerData?, NSError?) -> Void' to expected argument type 'CMPedometerHandler' (aka '(Optional<CMPedometerData>, Optional<Error>) -> ()')

これまでの私のコードは次のとおりです。

if(CMPedometer.isStepCountingAvailable()){
        let fromDate = NSDate(timeIntervalSinceNow: -86400 * 7)
        self.pedoMeter.queryPedometerDataFromDate(fromDate as Date, toDate: NSDate() as Date) { (data : CMPedometerData?, error: NSError?) -> Void in
            DispatchQueue.main.async(){
                if(error == nil){
                    self.steps.text = "\(data.numberOfSteps)"
                }
            }
        }

        self.pedoMeter.startPedometerUpdatesFromDate(newDay) { (data: CMPedometerData?, error: NSError?) -> Void in
            DispatchQueue.main.async(){
                if(error == nil){
                    self.steps.text = "\(data.numberOfSteps)"
                }
            }
        }
    }

エラーは次の行で発生します。

{ (data : CMPedometerData?, error: NSError?) -> Void in
            DispatchQueue.main.async(){

どんな助けでも感謝します。

4

1 に答える 1

4

Error?使っているうちに期待NSError?。試す

(data : CMPedometerData?, error: Error?) -> Void
于 2017-01-06T20:33:30.883 に答える