我正在通过在按钮中添加线性梯度来创建外观美观的UIbuttons。但是,我不确定我需要在哪个索引上添加梯度。当前将渐变设置在图像/文本上的代码。
如何将子层插入到文本/图像子层下的UIButton中?对我来说很重要,使按钮的文本和图像可见!
+(void)addLinearGradientToView:(UIView*)view TopColor:(UIColor*)topColor BottomColor:(UIColor*)bottomColor
{
for(CALayer* layer in view.layer.sublayers)
{
if ([layer isKindOfClass:[CAGradientLayer class]])
{
[layer removeFromSuperlayer];
}
}
CAGradientLayer* gradientLayer = [CAGradientLayer layer];
gradientLayer.startPoint = CGPointMake(0.5, 0);
gradientLayer.endPoint = CGPointMake(0.5,1);
gradientLayer.frame = view.bounds;
gradientLayer.colors = [NSArray arrayWithObjects:(id)[topColor CGColor], (id)[bottomColor CGColor], nil];
// [view.layer addSublayer:gradientLayer];
if(view.layer.sublayers.count>0)
{
[view.layer insertSublayer:gradientLayer atIndex:view.layer.sublayers.count-2];
}else {
[view.layer addSublayer:gradientLayer];
}
}发布于 2012-05-14 16:46:36
对于要达到的目标,请始终在索引0处插入。
最近我给文章写了一篇关于这类事情的文章,你可能会觉得很有趣。
https://stackoverflow.com/questions/10585103
复制相似问题