1. 程式人生 > >iOS 讓視圖UIView 單獨顯示某一側的邊框線

iOS 讓視圖UIView 單獨顯示某一側的邊框線

view tom 函數 1.5 bow eight 添加 span back

技術分享

有時候需要讓view顯示某一側的邊框線,這時設置layer的border是達不到效果的。在網上查閱資料發現有一個投機取巧的辦法,原理是給view的layer再添加一個layer,讓這個layer充當邊框線的角色。根據這個方法我寫了一個函數,有需要的朋友可以拿去試下。

- (void)setBorderWithView:(UIView *)view top:(BOOL)top left:(BOOL)left bottom:(BOOL)bottom right:(BOOL)right borderColor:(UIColor *)color borderWidth:(CGFloat)width
{
    
if (top) { CALayer *layer = [CALayer layer]; layer.frame = CGRectMake(0, 0, view.frame.size.width, width); layer.backgroundColor = color.CGColor; [view.layer addSublayer:layer]; } if (left) { CALayer *layer = [CALayer layer]; layer.frame = CGRectMake(0
, 0, width, view.frame.size.height); layer.backgroundColor = color.CGColor; [view.layer addSublayer:layer]; } if (bottom) { CALayer *layer = [CALayer layer]; layer.frame = CGRectMake(0, view.frame.size.height - width, view.frame.size.width, width); layer.backgroundColor
= color.CGColor; [view.layer addSublayer:layer]; } if (right) { CALayer *layer = [CALayer layer]; layer.frame = CGRectMake(view.frame.size.width - width, 0, width, view.frame.size.height); layer.backgroundColor = color.CGColor; [view.layer addSublayer:layer]; } }

本文出自 “rainbownight” 博客,請務必保留此出處http://rainbownight.blog.51cto.com/1336585/1332286

iOS 讓視圖UIView 單獨顯示某一側的邊框線