JBGradient 类提供了一种将渐变添加到 UILabels、UITextViews 和 UITextFields 的有用方法。通常,您需要将渐变添加到 UIView,然后将上述类型的文本显示类作为子视图添加。这些渐变类是上述标准 UI 类的子类,因此它们可以像其他标签(等)一样使用。
要使用这些类,请将渐变文件添加到您的项目中,并将您的 UILabel、UITextView 或 UITextField 声明为 JBGradientLabel、JBGradientTextView 或 JBGradientTextField 的子类,然后为子类设置 CGGradientLayer 属性
#import "JBGradientLabel.h"
...
- (void)viewDidLoad {
[super viewDidLoad];
JBGradientLabel *label = [[JBGradientLabel alloc] initWithFrame:CGRectMake(20, 20, 280, 100)];
label.gradientColors = @[[UIColor blackColor], [UIColor redColor]];
label.textColor = [UIColor whiteColor];
[label setText:@"This is a gradient label!"];
[self.view addSubview:label];
}
每个 UILabel、UITextView 和 UITextField 都包含以下附加属性
// For all Gradients
@property (nonatomic, assign) JBGradientType gradientType;
@property (nonatomic, strong) NSArray *gradientColors;
@property (nonatomic, strong) NSArray *gradientLocations;
@property (nonatomic, assign) CGGradientDrawingOptions options;
// For the Linear Gradients
@property (nonatomic, assign) CGPoint startPoint;
@property (nonatomic, assign) CGPoint endPoint;
// For the Radial Gradients
@property (nonatomic, assign) CGPoint startCenter;
@property (nonatomic, assign) CGFloat startRadius;
@property (nonatomic, assign) CGPoint endCenter;
@property (nonatomic, assign) CGFloat endRadius;
要运行示例项目,首先克隆仓库,然后从 Example 目录运行 pod install
。
carleek, [email protected]
JBGradientTextViews 在 MIT 许可下提供。有关更多信息,请参阅 LICENSE 文件。