由於UIProgressHUD
需要訪問私人API, 所以我希望構建一個圓角和白色邊框UIView
。 我知道要出角球輪是:UIView與圓角和白色邊框
view.layer.cornerRadius = 5;
但如何使UIView的具有同時圓角和白色邊框?
歡迎任何評論
感謝 InterDev中
由於UIProgressHUD
需要訪問私人API, 所以我希望構建一個圓角和白色邊框UIView
。 我知道要出角球輪是:UIView與圓角和白色邊框
view.layer.cornerRadius = 5;
但如何使UIView的具有同時圓角和白色邊框?
歡迎任何評論
感謝 InterDev中
從同一層對象:
view.layer.borderWidth = 1;
view.layer.borderColor = [[UIColor whiteColor] CGColor];
有視圖層邊框屬性,以及:如:
view.layer.borderWidth = 1;
view.layer.borderColor = [UIColor redColor].CGColor;
[view.layer setBorderWidth:2];
[view.layer setBorderColor:[[UIColor whiteColor]CGColor]];
代碼來獲得圓角和邊框
#import <QuartzCore/QuartzCore.h>
view.layer.cornerRadius = 10;
view.layer.borderWidth = 1;
view.layer.borderColor = [[UIColor whiteColor] CGColor];
有時用白色邊框圓角半徑不能正常工作所以我用UIBezierPath
和CAShapeLayer
。
爲了使圓角半徑
UIBezierPath *maskPath;
maskPath = [UIBezierPath bezierPathWithRoundedRect:self.imageView.bounds byRoundingCorners:(UIRectCornerTopLeft | UIRectCornerTopRight | UIRectCornerBottomLeft | UIRectCornerBottomRight) cornerRadii:CGSizeMake(10.0, 10.0)];
CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
maskLayer.frame = self.view.bounds;
maskLayer.path = maskPath.CGPath;
self.imageView.layer.mask = maskLayer;
爲了使邊框白色
CAShapeLayer* borderShape = [CAShapeLayer layer];
borderShape.frame = self.imageView.bounds;
borderShape.path = maskPath.CGPath;
borderShape.strokeColor = [UIColor whiteColor].CGColor;
borderShape.fillColor = nil;
borderShape.lineWidth = 3;
[self.imageView.layer addSublayer:borderShape];
它將工作。希望這有助於
view.layer.cornerRadius = 5;
view.clipsToBounds = YES;
view.layer.borderWidth = 1;
view.layer.borderColor = [UIColor whiteColor].CGColor;
CALayer的是核心動畫,不UIKit中的一部分。因此,它需要一個CGColor,而不是UIColor。 – MarkPowell 2010-12-01 17:35:05
哦,是的,抱歉,我只是從我的頭上打字。 – 2010-12-01 19:52:05