Tôi tự hỏi nếu có một cách để làm điều này bằng cách sử dụng Core Animation. Cụ thể, tôi đang thêm một lớp con vào một NSView tùy chỉnh được hỗ trợ lớp và thiết lập ủy nhiệm của nó cho một NSView tùy chỉnh khác. Phương thức drawInRect của lớp đó rút ra một CGPath đơn lẻ:Làm thế nào để animate bản vẽ của một CGPath?
- (void)drawInRect:(CGRect)rect inContext:(CGContextRef)context
{
CGContextSaveGState(context);
CGContextSetLineWidth(context, 12);
CGMutablePathRef path = CGPathCreateMutable();
CGPathMoveToPoint(path, NULL, 0, 0);
CGPathAddLineToPoint(path, NULL, rect.size.width, rect.size.height);
CGContextBeginPath(context);
CGContextAddPath(context, path);
CGContextStrokePath(context);
CGContextRestoreGState(context);
}
Hiệu ứng mong muốn của tôi sẽ là làm sống động bản vẽ của đường này. Đó là, tôi muốn cho dòng thực sự "căng" một cách hoạt hình. Có vẻ như sẽ có một cách đơn giản để làm điều này bằng cách sử dụng Core Animation, nhưng tôi đã không thể bắt gặp bất kỳ điều gì.
Bạn có bất kỳ đề xuất nào về cách tôi có thể đạt được mục tiêu này không?
FWIW, CAShapeLayer là một sự lựa chọn tuyệt vời cho hoạt hình đường dẫn tùy ý. Nhưng với một đường thẳng, tôi sẽ gắn bó với câu trả lời của Noah. :-) –