2012-11-09 49 views
1

我想在UIBezierPath動畫的addLineToPoint完成後運行一些腳本。在UIBezierPath結尾處運行一些代碼addLineToPoint

這是一張我的代碼

UIBezierPath *path = [UIBezierPath bezierPath]; 

    CGRect pathRect = CGRectInset(self.animationLayer.bounds, 0.0f, 0.0f);  
// define cgpoint 
    CGPoint number1 = CGPointMake(CGRectGetMinX(pathRect), CGRectGetMaxY(pathRect)); 
    [path addLineToPoint: number1]; 

在這裏,我找到了UIBezierClass參考,但我無法找到動畫addLineToPoint做任何指示。提前致謝。 http://developer.apple.com/library/ios/#documentation/uikit/reference/UIBezierPath_class/Reference/Reference.html

+0

我想你需要多線程的幫助 – sunkehappy

+0

嗯,你有沒有一些解決方案。所以,UIBezierPath的一個線程,當線程完成時,我應該開始動畫線程? – bla0009

+0

任何建議或例子? – bla0009

回答

4

addLineToPoint沒有涉及動畫。構建UIBezierPath的所有其他方法也是如此。

如果您查看文檔,您正在討論的方法在「構建路徑」部分下。它所做的只是在模型中添加一條線(它甚至不在屏幕上繪製)。

您可以通過調用它fillstroke一些人認爲的drawRect:方法中繪製整個貝塞爾路徑,但不會任動畫任何東西。


這聽起來對於我而言,您希望既激活該路徑的動作,又在完成時獲得回調。如果是這樣,你應該創建一個CAShapeLayer並將你的貝塞爾路徑分配給它的路徑屬性。然後,您可以通過將strokeEnd屬性從0動畫到1來動畫化該形狀圖層的動作。如果將自己配置爲該動畫的委託,則動畫完成後,您將收到animationDidStop:finished:回調。

+0

這就是答案。謝謝! :) – bla0009

相關問題