android 中的 slider 和 seekbar 有什么区别

What's the difference between slider and seekbar in android

我是 Android 的新手,我正在学习 SeekBars。在 Google material design site 中,我从 (com.google.android.material.slider.Slider) 包中找到了 Sliders 而不是 seekbars。我想知道Slider和SeekBar有什么区别,我应该使用哪个,哪个更好?实现这两个的目的是什么?我搜索了很多,网上没有有用的内容

以下内容可能不完全准确,但足以说明一些历史:

Slider 只是 SeekBar 的 MDC 版本 - 名称略有不同,但功能更多。

首先,只有 SeekBar - 与 Android 捆绑在一起的原始框架 UI 组件。 然后,AndroidX 库(以前称为 Support Libraries)被创建用于向后移植新的 UI 组件和错误修复到 OEM 拒绝再更新的旧手机。 AndroidX AppCompat 子项目会在您使用 AppCompatActivity 时将所有框架组件换成“固定”版本。 SeekBar -> AppCompatSeekBar, TextView -> AppCompatTextView...

旧的 Support Libraries 也有一个名为 design 的包,其中包含一些当时新的 Material 1.0 组件(CardView 等等)框架对应物。这就是为什么没有 AppCompatCardView 的原因 - 因为没有框架 CardView,所以没有什么可以用 AppCompat 来“修复”。

如果我没记错的话,Support Librariesdesign 包后来成为 Material Components 的 Android 实现的起点,当时 Material 2.0亮相。 Material Design 有自己的 SeekBar 版本,称为 Slider,它可以完成旧 Android SeekBar 所能做的一切,而且还有更多。

至于用哪个?(都不是“更好”,那种想法不适用)

  • 如果您已经在使用 MDC 库,或者如果您需要 Slider 的某些高级功能,请使用 Slider。
  • 如果您只需要一条在两个极端之间滑动的圆圈的简单直线,请使用 SeekBar 而不是为此拉动 MDC 库。