1

我想为我的自定义 UI 控件创建一个算法,用于从给定的色调颜色计算高亮色调颜色。

突出显示色调颜色是指在突出显示项目时在标准 iOS UI 控件(如 UISegmentedView)中显示的颜色。看这里:

在此处输入图像描述

是否有关于如何计算这种颜色的官方信息?是否有任何可以计算颜色的开源库(例如用于自定义组件)?或者是否有一个 UIColor 类别可以完全实现我想要实现的目标?

4

1 回答 1

0

正如Desdenova在评论中提到的那样,高光色调看起来与不透明度为 15% 的色调颜色相同。我创建了一个简单的类别,它从色调颜色创建这种颜色。

UIColor+HighlightTintColor.h

@interface UIColor (HighlightTintColor)

- (instancetype)highlightTintColor;
+ (instancetype)highlightTintColorForTintColor:(UIColor *)tintColor;

@end

UIColor+HighlightTintColor.m

#import "UIColor+HighlightTintColor.h"

@implementation UIColor (HighlightTintColor)

- (instancetype)highlightTintColor
{
    return [[self class] highlightTintColorForTintColor:self];
}

+ (instancetype)highlightTintColorForTintColor:(UIColor *)tintColor
{
    return [tintColor colorWithAlphaComponent:0.15];
}

@end

如果有更好的建议,请发布您的答案,如果它们比这个更好,我会接受它们。

于 2013-09-25T07:53:57.650 回答