我正在努力计算resizableImageWithCapInsets的参数。
我创建了一个如下所示的按钮图像,我将用于Facebook登录。我希望Facebook'f'是静态的,其余的(右侧)可以伸展,因为我相信你可以想象。
这是我最接近输出的代码:
UIImage *facebookButton = [[UIImage imageNamed:@"FacebookLogin"]
resizableImageWithCapInsets:UIEdgeInsetsMake(18, 36, 18, 18)];
结果如下:
我试图在网络上关注this explanation,但我发现很难理解。如果有人知道正确的调整大小以及任何有用的教程/指南都会很棒。
答案 0 :(得分:0)
在您发布的链接中,他只使用没有图像的按钮 - 整个按钮仍在拉伸,如果他在这些按钮上有图像,结果将是您遇到的。
您需要将图片拆分为'图标'以及'文字'零件,有点像这样:
我是Obj-C的新手,但希望这会有所帮助。
答案 1 :(得分:0)
看起来您设置的按钮框架比图像高。这不会成为' f'看起来不舒服。最好的解决方案是将按钮的框架设置为与图像相同的高度(36px)。但如果你需要,请设置这样的插图:
UIEdgeInsetsMake(4, 36, 31, 35)
这将拉伸' f'正上方的蓝线。在圆角的下方,将徽标留在左下角。 (插入顺序为顶部,右侧,底部,左侧。)