我有一个UIButton。对于我的按钮,我想用垂直渐变设置图像。
按钮可以改变它的宽度和高度,所以我需要使图像可伸缩。我发现方法如:
UIImage* myGradientImage = [UIImage imageNamed:@"gradientImage.png"];
UIImage* stretchImage = [myGradientImage
stretchableImageWithLeftCapWidth:20 topCapHeight:20];
当按钮宽度增加时,它伸展好了。但如果高度增加,渐变看起来不是很好。
有没有可能将bottomCapHeight和topCapHeight一起设置?或者说图像不要触摸图像中心?
答案 0 :(得分:3)
如果你这样做
UIImage* stretchImage = [myGradientImage stretchableImageWithLeftCapWidth:20
topCapHeight:0];
高度将均匀拉伸,如果您提供高分辨率的原始图像,这样看起来会很好。
但是,如果图像中有圆角,则会使它们成为非圆形。要解决这个问题,请提供没有圆角的渐变图像,然后执行
button.layer.cornerRadius = 4;