iOS 26 regression: Slider does not respect step parameter

In iOS 26, the Slider control no longer respects the step parameter. For example,

import SwiftUI

struct ContentView: View {
    
    @State private var sliderValue: CGFloat = 16
 
    var body: some View {
        Slider(
            value: $sliderValue,
            in: 0...100,
            step: 5,
            onEditingChanged: { editing in
                print(sliderValue)
            }
        )
    }
}

In iOS 18, this prints values like 5, 35, 60, 95, etc. In iOS 26.0 (release version), this prints floats that are not rounded to the nearest 5, and the slider does not snap to values ending in 5.

Feedback report number: FB20320542

Answered by wmk in 860374022

Noticed this today; hope something this basic gets fixed ASAP

Noticed this today; hope something this basic gets fixed ASAP

Thanks for the feedback report. To add to that, Sliders have gotten an update in iOS 26. Controls like toggles, segmented pickers, and sliders now transform into liquid glass during interaction. Please review the WWDC session: Build a SwiftUI app with the new design to learn more about the new behaviors and design of Sliders.

To be clear, I tested this with UIDesignRequiresCompatibility=TRUE. I don't know if this is the case for @jwcarr and I haven't tested this with glass Sliders.

Also, flattered that I got an Apple Recommended badge, but not sure I deserve it for that post.

Yes, the bug is present with or without UIDesignRequiresCompatibility=TRUE. In fact, the bug is even present in apps compiled with Xcode 16 but running on iOS 26 devices. So, presumably the bug is low level – lower than the iOS 18 compatibility layer. A lot of apps must be hitting this issue!

@jwcarr I'm a new developer, and the fact that I stumbled upon this bug in a non-beta release makes me nervous about what other bugs in basic functionality I just haven't noticed yet.

iOS 26 regression: Slider does not respect step parameter
 
 
Q