Switch VS Checkbox in User Interface Design

Teaser image
switch and checkbox

On the Mac, toggle or switch widgets aren't very common, yet. On iOS, you don't see lots of checkboxes. This article on UX Movement points out that switches are for immediate actions while changes to checkboxes require a submit button to be pressed.

Now I think about preference panes in Mac apps. They usually perform changes to NSUserDefaults immediately. But using switches on a Mac still feels wrong. Maybe just because I'm not used to it, but still.

macOS's Notification Center has a switch to toggle "Do not Disturb". It works, but I don't use it a lot, so there's not much opportunity to get accustomed to it.

Check Boxes in AppKit

Check boxes in AppKit are realized with buttons. The API reads kind of weird, so here's a simple subclass: Now it's easy to use checkbox.checked = true. I'd even consider check() and uncheck() methods if I used this in many places to reduce the noise and clarify what's going on.

Continue reading …