iOS:以编程方式在按钮顶部绘制一个矩形

时间:2014-11-10 04:08:28

标签: ios uibutton

我需要在UIButton上绘制一个矩形。假设有一个名为hideMe的UIButton,这个按钮的大小为100x50。每次用户收到消息时,我都希望在此按钮的顶部放置一个100x10的矩形。如果用户收到五条消息,则该按钮将被矩形完全覆盖。我该怎么做?

2 个答案:

答案 0 :(得分:0)

CALayer *topBorder = [CALayer layer];
topBorder.borderColor = [UIColor redColor].CGColor;
topBorder.backgroundColor = [UIColor blackColor].CGColor;
topBorder.borderWidth = 2;
topBorder.frame = CGRectMake(0, 15, <tempButton>.frame.size.width,  <tempButton>.frame.size.height-30);
[<tempButton>.layer addSublayer:topBorder];

上面的代码可以帮助您绘制矩形。您可以增加图层帧以覆盖完整。

答案 1 :(得分:0)

试试这个

#import <QuartzCore/QuartzCore.h>

这里我们绘制自己的边框rect并将其查看到我们的按钮

-(UIView*)borderRectWithYvalue:(CGFloat)yValue
{
    UIView * rect = [[UIView alloc] initWithFrame:CGRectMake(0,yValue, 100, 10)];
    rect.backgroundColor = [UIColor lightGrayColor];
    rect.layer.borderColor = (__bridge CGColorRef)([UIColor redColor]);
    rect.layer.borderWidth = 2.0f;
    return rect;
}

并使用自定义y值为您的按钮添加边框的时间和地点调用此方法

for ex

[yourButton addSubview:[self borderRectWithYvalue:10.0]];

相关问题