2012-01-08 247 views
0

編輯:根據提供的意見,我已指定我的問題更直接的實施和所需的解決方案。iOS核心動畫警燈閃爍效果

你好,

我想藍光,一個紅燈,並潛在中性色光,所有出現在圓(類似的可紡到,如果一輛警車附近,你會看到燈閃爍/旋轉的顏色)。

下面是我正在使用的紅色和藍色圖像視圖的屏幕截圖,用於設置效果。

example screenshot of red and blue images 下面的代碼目前變化每個視圖層的不透明度:

[UIView animateWithDuration:4.5 
         delay: 1.0 
        options: UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionCurveLinear 
       animations:^{ 
        [self startRedAnimation]; 
        [self startBlueAnimation]; 
       } 
       completion:^(BOOL finished){}]; 

我的動畫製作方法如下所示:

- (void)startRedAnimation 
{ 
    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"opacity"]; 
    [animation setFromValue:[NSNumber numberWithFloat:0.75]]; 
    [animation setToValue:[NSNumber numberWithFloat:0.1]]; 
    [animation setDuration:0.5f]; 
    [animation setTimingFunction:[CAMediaTimingFunction 
            functionWithName:kCAMediaTimingFunctionLinear]]; 
    [animation setAutoreverses:YES]; 
    [animation setRepeatCount:16]; 

    [[_redLightView layer] addAnimation:animation forKey:@"opacity"]; 
} 

你可以想像的是,blueLightView動畫方法看起來相似。

我在尋找的是讓視圖看起來旋轉,IE他們不只是從0到1閃爍他們的不透明度,而是改變顏色和/或在視圖中繞着一圈旋轉。

我想使用QuartzCoreCoreAnimation框架來實現此目的,而不是僅僅通過一組圖像上的UIView動畫。

我是比較新的CoreAnimation,並執行類似的效果,如旋轉/脈衝視圖層,但我只是不確定我可以使用框架,會給我我要找的效果。

任何有識之士將不勝感激!感謝Stack Overflow同行!

+1

這個問題過於模糊/模棱兩可。有無數的圖形樣式(想想;「漫畫書樣式」,「現實的」,等等),並且繪製這些東西的方法會有所不同。問題不在於提出具體的技術問題 - 這是一個普遍問題我甚至無法提供「可接受的答案」所包含的內容大綱。 – Steve 2012-01-08 23:55:13

+0

如果您可以顯示視頻或草圖,說明您希望它的外觀如何,那麼這個問題就會縮小一點。 – jtbandes 2012-01-09 00:25:06

+0

感謝洞察力,夥計們,我附上了我正在使用的屏幕截圖,以及一些具有我現有功能的示例代碼,希望這能幫助我的方向看起來更加清晰。 – kturner 2012-01-09 02:16:41

回答

0

嘗試移動圖像而不是更改顏色。我可以想象,您可以通過來回旋轉屏幕底部的圖像來達到預期的效果。 Illustration of the rotating light