Instance Method インスタンスメソッド

digitalCrownRotation(_:from:through:by:sensitivity:isContinuous:isHapticFeedbackEnabled:)

Tracks Digital Crown rotations by updating the specified binding. 「デジタルクラウン」の回転をこの指定されたバインディングを更新することによって追跡します。

Declaration 宣言

func digitalCrownRotation<V>(_ binding: Binding<V>, from minValue: V, through maxValue: V, by stride: V.Stride? = nil, sensitivity: DigitalCrownRotationalSensitivity = .high, isContinuous: Bool = false, isHapticFeedbackEnabled: Bool = true) -> some View where V : BinaryFloatingPoint, V.Stride : BinaryFloatingPoint

Parameters パラメータ

binding

A binding to a value that updates when the user rotates the Digital Crown.

minValue

Lower end of the range reported. 報告される範囲の下側の終わり。

maxValue

Upper end of the range reported. 報告される範囲の上側の終わり。

stride

The value settles on multiples of stride.

sensitivity

How much the user needs to rotate the Digital Crown to move between two integer numbers.

isContinuous

Controls if the value reported stops at minValue and maxValue, or if it should wrap around. Default is false. 省略時はfalseです。

isHapticFeedbackEnabled

Controls the generation of haptic feedback when turning the Digital Crown. Default is true. 「デジタルクラウン」を回している時、触覚フィードバックの発生を制御します。省略時はtrueです。

Discussion 議論

Use this method to receive values on a binding you provides as the user turns the Digital Crown on Apple Watch. The example below receives changes to the binding value, starting at the minValue of 0.0 up to the maxValue of 10.0 in steps of 0.1 incrementing or decrementing depending on the direction that the user turns the Digital Crown, rolling over if the user exceeds the specified boundary values:


struct DigitalCrown: View {
    @State private var crownValue = 0.0
    @State private var minValue = 0.0
    @State private var maxValue = 10.0
    @State private var stepAmount = 0.1


    var body: some View {
        Text("Received Value:\(crownValue, specifier: "%.2f")")
            .focusable()
            .digitalCrownRotation($crownValue,
                                  from: minValue,
                                  through: maxValue,
                                  by: stepAmount,
                                  sensitivity: .low,
                                  isContinuous: true)
    }
}

A screenshot showing a value received by turning the Digital Crown