我很困惑,为什么如果我将以下代码添加到
对于通过程序创建的按钮,我应该在哪里添加此方法?按钮可能仅使用
awakeFromNib
或initWithFrame:
中,它可以正常工作,但如果我将其添加到drawRect:
中或直接调用它,它就无法工作?self.layer.cornerRadius = CGRectGetWidth(self.bounds) / 2.0f;
self.layer.shadowColor = [UIColor blackColor].CGColor;
self.layer.shadowRadius = 3;
self.layer.shadowOffset = CGSizeMake(0.0f, 0.0f);
self.layer.shadowOpacity = 0.75f;
对于通过程序创建的按钮,我应该在哪里添加此方法?按钮可能仅使用
init
创建,并且稍后通过约束更改大小。
规范:工作时,指按钮将被圆形化(如果纵横比为1:1,则为圆形),并带有投影阴影。不工作指按钮将保持方形。
drawRect
中调用它?你重写那个方法是为了绘制而不是思考。 - trojanfoedrawRect:
方法在init...
和awakeFromNib
方法之后被调用,直到窗口或视图的层已经创建。您需要再次更新它们。 - Anoop Vaidya[setNeedDisplay:YES]
... - Anoop Vaidya