ios - 如何使用自定义控件在 UILabel 中对部分文本颜色变化进行动画处理?

标签 ios ios7 textkit

我正在制作一个自定义选择器控件,但遇到了一个问题 - 我需要对 uilabels 文本颜色部分进行动画处理。

示例如下:
enter image description here

这是选择器的默认 View 。当我单击左侧或右侧时,白色选择器将滑到该侧。但是由于标签文本颜色是白色,我需要部分更改颜色,因此如果我的白色选择器位于标签的中间,则标签中灰色背景上的文本部分应该是白色,并且选择器覆盖的部分应该是灰色的。

如果有任何建议,我将不胜感激。

最佳答案

您可以通过让白色选择器充当 mask 来实现此目的。复制三个标签——一组为白色,另一组为灰色——并将它们相互重叠。添加三个灰色选择器作为白色选择器的 subview ,并使白色选择器进入clipsToBounds。当您为选择器设置动画时,以相同的速率向相反方向设置 subview 标签的动画,它们看起来会保持在原位,但随着白条的移动而显示出来。

关于ios - 如何使用自定义控件在 UILabel 中对部分文本颜色变化进行动画处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26242862/

相关文章:

ios - 为什么我在 PHAsset 中得到了两种不同的日历类型的 creationDate?

iOS 编程方式的宽高比约束在 UITableviewcell 中被打破

ios - 使 block 与屏幕边界碰撞

ios - 从 xcassets 加载应用程序图标

ios - iOS 7 上选定的 UISegmentedControl 部分的色调不正确

ios - 为什么在使用 TextKit 呈现文本时第二行最终会比第一行短?

具有来自文件的多个段落样式的 iOS7 UITextView

ios - 属性文本不适用于 TableView Cell

ios - 无法结束 BackgroundTask : no background task exists with identifier 4, 或者它可能已经结束

javascript - Phonegap 没有运行 javascript