我建立一個UIBezierPath如下:CAShapeLayer描繪軌跡奇怪
UIBezierPath *path = [UIBezierPath bezierPath];
CGFloat yOrigin = 2;
for (int i = 0; i < lines; ++i) {
[path moveToPoint:CGPointMake(0, yOrigin)];
[path addLineToPoint:CGPointMake(width, yOrigin)];
yOrigin += distance;
}
[path closePath];
然後我把它放在一個CAShapeLayer:
CAShapeLayer *shapeLayer = [[CAShapeLayer alloc] init];
[shapeLayer setFrame:aFrame];
[shapeLayer setPath:[bezierPath CGPath]];
[shapeLayer setStrokeColor:[[UIColor blackColor] CGColor]];
[shapeLayer setMasksToBounds:YES];
然而,當添加到我的滾動視圖,這裏是結果:
它爲什麼要這樣做呢?前四條線幾乎是灰色的!它看起來像一個別名問題,但路徑非常簡單。
這當然是這樣,但爲什麼我的路徑代碼實際上這樣做?假設「距離」是12.0。它應該落在整個點上。 – DexterW