Xcode 自定义进度指示器-从左到右设置子视图颜色覆盖动画

Xcode 自定义进度指示器-从左到右设置子视图颜色覆盖动画,xcode,swift,uikit,Xcode,Swift,Uikit,我有一个包含许多列/子视图的容器UIView 我想在容器UIView上创建一个颜色填充动画,从左到右,如下图所示,因此它会逐渐改变仅子视图的颜色 如何做到这一点? 我猜我必须创建一个遮罩并将其移动到这个容器视图上? 但是,如何实现遮罩仅应用于子视图 编辑: 这是播放音频文件的进度指示器,因此需要精确指示当前时间位置。 此外,我必须能够有不同大小的形状,因为他们代表音频波 我会用与你描述相反的方式来做。我会把你的音频波形画成一个面具,这样就能揭示它们背后的一切。然后,在遮罩后面向右放置一个彩色矩形

我有一个包含许多列/子视图的容器UIView

我想在容器UIView上创建一个颜色填充动画,从左到右,如下图所示,因此它会逐渐改变仅子视图的颜色

如何做到这一点? 我猜我必须创建一个遮罩并将其移动到这个容器视图上? 但是,如何实现遮罩仅应用于子视图

编辑:

这是播放音频文件的进度指示器,因此需要精确指示当前时间位置。 此外,我必须能够有不同大小的形状,因为他们代表音频波


我会用与你描述相反的方式来做。我会把你的音频波形画成一个面具,这样就能揭示它们背后的一切。然后,在遮罩后面向右放置一个彩色矩形并设置其动画,以指示音乐的进度,这是很简单的:

换句话说,颜色不是覆盖,而是参考底图