我创建了一个自定义iOS数字键盘,按钮有圆角:
control.layer.cornerRadius = 6;
control.layer.opacity = 1;
在我要绘制图像的其中一个按钮上,我已经将UIButton子类化,以覆盖'drawRect'函数。
@interface KfKeypadButtonWithDrawing : UIButton
- (void)drawRect:(CGRect)rect;
@end
drawRect实现只是在按钮上绘制了一些线条。没什么特别的。
- (void)drawRect:(CGRect)rect
{
[super drawRect:rect];
// custom drawing code to create an image on the button
}
然而,一旦我覆盖drawRect
,按钮就会停止圆角。有没有办法在按钮上绘制图像并让按钮尊重cornerRadius样式设置?
谢谢,
亚伦
答案 0 :(得分:0)
尝试将您尝试在drawRect
中绘制的内容放入图像(png,jpg)并使用UIButtons
setImage:forState
或setBackgroundImage:forState
。
答案 1 :(得分:0)
是的,就像这样:
override func drawRect(rect: CGRect) {
// the custom drawing
let roundedRect = UIBezierPath(roundedRect: rect, cornerRadius: 20)
UIColor.redColor().setFill()
roundedRect.fill()
// call super
super.drawRect(rect)
}