-1

这是我的代码,它应该可以工作,但不能。

self.square =[[UIView alloc]init];
self.square.center = CGPointMake(location.x, location.y);
//_square.backgroundColor = [UIColor colorWithRed:12.0/255.0 green:185.0/255.0 blue:249.0/255.0  alpha:1];
[_square.layer setBorderColor: (__bridge CGColorRef)[UIColor colorWithRed:12.0/255.0 green:185.0/255.0 blue:249.0/255.0  alpha:1]];
_square.alpha=1.0;
[_square.layer setBorderWidth:2.0];
[previewView addSubview:_square];

问题是,如果我给视图一个背景颜色,那么视图是可见的,但如果我不这样做,则视图不可见。我想要做的是得到一个方形轮廓。所以我想如果我得到一个没有背景颜色和边框的视图,它会起作用。

4

2 回答 2

3

不要将 UIColor 类型转换为 CGColor 尝试下面的代码

[_square.layer setBorderColor: [UIColor colorWithRed:12.0/255.0 green:185.0/255.0 blue:249.0/255.0  alpha:1].CGColor];
于 2013-10-17T04:04:28.707 回答
1

默认情况下 UIView 是透明的。您可以通过为视图的背景和边框设置不同的颜色来实现您想要的。然后根据需要进行调整。

你可以这样做:

 _square.backgroundColor = [UIColor whiteColor];
[_square.layer setBorderColor:[UIColor redColor].CGColor];
于 2013-10-17T05:31:37.773 回答