Type Method

predicateForQuantitySamples(with:quantity:)

Returns a predicate that matches samples based on the target quantity.

Declaration

class func predicateForQuantitySamples(with operatorType: NSComparisonPredicate.Operator, quantity: HKQuantity) -> NSPredicate

Parameters

operatorType

The operator type to use when comparing the sample’s quantity to the target quantity.

quantity

The target quantity object.

Return Value

A predicate that matches samples based on the target quantity. This predicate works only on quantity samples.

Discussion

Use this convenience method to create a predicate that matches against a sample’s quantity. The following sample uses both the convenience method and a predicate format string to create equivalent predicates.

let targetWeight = HKQuantity(unit: HKUnit.poundUnit(),
                              doubleValue: 150.0)
 
let underTargetWeight =
    HKQuery.predicateForQuantitySamplesWithOperatorType(
        .LessThanOrEqualToPredicateOperatorType,
        quantity: targetWeight)
 
 
let explicitUnderTargetWeight = NSPredicate(format: "%K <= %@",
                                            HKPredicateKeyPathQuantity,
                                            targetWeight)

See Also