问题描述
我正在尝试自定义我的子类 UiSlider 以在可拖动拇指下方添加第二个轨迹栏。这里的想法是让这个新轨道代表“平均评级”以及用户用来设置自己评级的现有拇指和轨道。我尝试插入一个自定义图层,但它要么位于整个滑块的后面,要么位于包括可拖动拇指在内的整个滑块的顶部。对此问题的任何帮助/见解将不胜感激。提前致谢。
这是我想要实现的目标的图像。我想成为代表“平均评分”的添加曲目的蓝色条:
解决方法
不要调用 addSublayer()
,而是尝试使用 insertSublayer(_: at:)。这将使您能够完全控制要插入 average rating layer
实例的层层次结构的确切位置。
更新
尝试检查 self.layer.sublayers
实例的 UISlider
。如果您可以轻松识别 thumbLayer
(例如基于 bounds.size
或它独有的任何内容)。然后你可以尝试插入你的图层
- 拇指下方使用 insertSublayer(_: below:)
- 使用 insertSublayer(_: above:) 在进度轨道上方(以防您可以识别它)