[英]How to keep CAShapeLayer to be inside its parent UIView?
我有一個Custom UIView,創建了一條繞其自身軸旋轉的線。
lineLayer = [[CAShapeLayer alloc] init];
UIBezierPath *bezierPath = [UIBezierPath bezierPath];
CGFloat width = CGRectGetWidth(self.frame)/2.0f;
CGFloat height = CGRectGetHeight(self.frame)/2.0f;
CGPoint centerPoint = CGPointMake(width, height);
CGPoint addLineToPoint = CGPointMake(width, -30);
[bezierPath moveToPoint:centerPoint];
[bezierPath addLineToPoint:addLineToPoint];
lineLayer.strokeColor = [UIColor whiteColor].CGColor;
lineLayer.frame = self.bounds;
lineLayer.lineWidth = 1.0;
lineLayer.path = bezierPath.CGPath;
[self.layer addSublayer:lineLayer];
[lineLayer setHidden:YES];
現在,此視圖在情節提要中設置為UIView的父類。
當我運行Project時,可以從其父視圖的圖層中看到該線圖層。
在此圖像中,lineLayer從其父UIView中出來,並且另一個視圖是情節提要層次結構中的父視圖。
有幫助嗎???
替換此行
CGPoint addLineToPoint = CGPointMake(width,-30);
與
CGPoint addLineToPoint = CGPointMake(width, -height);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.