2013-09-24 44 views
5

我试图围绕UIView做一个半透明的边框。这个想法是显示一张图片,但是边框覆盖了图片的边缘,但仍然可以让您看到边框后面的内容。我希望边界对不同的边有不同的边界宽度。在顶部,我想有一个80分的边界,在底部我想要一个60分的边界,并且在边上我想要一个10分的边界。我知道,使用的代码:如何在UIView周围制作自定义边框?

UIView.layer.borderColor = [UIColor blueColor].CGcolor; 
UIView.layer.borderWidth = 10; 

会给你的宽度10均匀周围的边框的UIView里面所有,但我怎么对的UIView的不同侧面设置不同的边框宽度?

+1

您可能必须研究QuartzCore编程,以便在视图边缘绘制路径并更改路径每一行上的颜色。不应该花太多时间学习和实验。 –

回答

0

这是一个简单的解决方案。在你的UIView上添加一个标签,清除标签上的文字,并将标签背景颜色设置为你的边框颜色。将标签的原点(x,y)设置为视图的原点(x,y)。并将标签的宽度设置为UIView的宽度,将高度设置为1或2(对于在UIView顶部的边框高度)。这应该可以做到。否则,您可以使用UIBezierPath类。

+5

为什么你需要一个'UILabel'?为什么不使用'UIView'? – rmaddy

+0

我最终通过添加UIViews来完成。 –

1

据我所知,它不可能通过使用UIView或其背景层的属性来获得你想要的。您可能需要使用另一个包含您想要的特定边框(可能作为自定义图形)的UIView并将其覆盖在图像顶部。

1

有一些工作要做到这一点。 1.在其他任何东西的底部添加一个图像视图,或索引0。并添加带有边框的图像。通过留下寄宿者边缘添加其他视图。图像可以在顶部,但只有寄宿生应该是坚实的,其余的图像应该是透明的。 2.在视图中添加视图并在超级视图中添加边框。你的观点框架应该在那个边界。

相关问题