一款 visionOS 滑块视图,模仿 Apple 的滑块扩展

JunoSlider

JunoSlider 是 visionOS 的一款自定义滑块(也许同样适合 iOS!),用于模仿 Apple 在如 AVPlayer 的视图中使用的可扩展滑块的样式,在无法使用 AVPlayer 的情况下使用。

滑块

JunoSlider 使用 SwiftUI 构建,并且可自定义,您可以更改其收缩和展开高度。

Apple 内置的滑块控件可能更适合许多情况,尤其不需要展开效果的情况。内置滑块可以设置其 controlSize 属性,但在 visionOS 上的动画效果有点奇怪。此外,其高度无法自定义,即使 .mini 与滑块配合使用,也不能像 Apple 的 AVPlayer 滑块一样窄。

非常感谢 Matthew Skiles 和 Ed Sanchez 帮助我处理控件的内阴影和外阴影。还要感谢 Twitter 和 Mastodon 上友善的人士,他们帮我调试了这个控件的动画问题,这似乎是 SwiftUI 的一个错误,而且似乎裁剪动画跳跃的效果是最佳折衷方案。