如何在iOS sdk中添加UIButton内的边框?

时间:2014-03-19 11:01:56

标签: ios objective-c uibutton

我使用以下代码为UIButton添加边框,它工作正常,但边框出现在UIButton区域外。如何在UI按钮区域内添加边框。请帮助我..

[[button1 layer] setBorderWidth:7.0];

[[button1 layer] setBorderColor:[UIColor redColor].CGColor];

2 个答案:

答案 0 :(得分:2)

没有直接的方法为UIView添加内部边框。但是,您可以为其添加子视图。这样的事情:(在.m文件中实现以下方法)。

-(void)setInnerBorderFor:(UIView *)aView withFloatVal:(CGFloat)aFloatVal
{
    UIView *borderView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, aView.frame.size.width, aView.frame.size.height)];
    borderView.backgroundColor = [UIColor clearColor];
    borderView.layer.borderWidth = aFloatVal;
    borderView.layer.borderColor = [UIColor blackColor].CGColor;
    [aView addSubview:borderView];

}

然后,您可以致电:

[self setInnerBorderFor:button1 withFloatVal:7.0f];

答案 1 :(得分:0)

我总是使用相同的方法绘制边框。 如果你想在里面绘制边框,你可以使用背景图像。

[button1 setBackgroundImage:[UIImage imageNamed:@"button1_bckg.png"]
                   forState:UIControlStateNormal];