自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Windows Phone開發(fā)(37):動畫之ColorAnimation

移動開發(fā)
和DoubleAnimation也是很像,畢竟所謂動畫,無非就是在特定的時間段內,把一個值變?yōu)榱硪粋€值的一種過度形式。故ColorAnimation就是用于顏色過度動畫的。

上一節(jié)中我們討論了用double值進行動畫處理,我們知道動畫是有很多種的,今天,我向大家繼續(xù)介紹一個動畫類——ColorAnimation。

其實,它和DoubleAnimation也是很像,畢竟所謂動畫,無非就是在特定的時間段內,把一個值變?yōu)榱硪粋€值的一種過度形式。故ColorAnimation就是用于顏色過度動畫的。其中,以下幾個屬性我們只需簡單關注一下即可:

1、By:相對于初始值所更改的值的總量。這個屬性比較不好理解,所以我把它放到***位,說實話,這種用顏色表示的值確實不好理解。我們不妨用 DoubleAnimation的By屬性來理解它,原理是一樣的。舉個例子,如果一個按鈕的寬度Width的值為200,現(xiàn)在我對它進行動畫處理,我把 By設置為150,那么,你猜一下,動畫的最終值是多少?不用猜,計算一下,既然By表示的是變化的總量,也就是 200 + 150 = ?,這結果不用我告訴你了吧,小學生級別的,你應該會計算的。

好的,再舉一個例子如何,比如A類的某依賴項屬性X的初始值為300,現(xiàn)在多要對它進行動畫處理,我將By設置為-100,動畫最終的值 = 300 - 100,這個會算了吧。

2、From:這個好理解 了,就是動畫開始時的值,比如,我希望動畫效果是,矩形的背景從紅色變成藍色,那么,F(xiàn)rom的值是不是Red啊?估計不用我給你答案了,你懂的。

3、To:與From相對,就是動畫結束時的值,像上面的例子,從紅色變成藍色,也就是說,F(xiàn)rom = Red,To = Blue  。

好了,上面的內容大概了解一下可以了,千萬不要背下來啊,編程是不能背書的,實在不記得了就查文檔,查資料, 不能背。不要被磚家誤導了。

現(xiàn)在我們可以開始干活了,來,跟著伴奏音樂,一起唱……

First,新建一個WP應用程序項目。

Second,這一步,沒什么的,把以下的XAML代碼干完,注意理解,不是叫你打字練習啊。

  1. <Grid>   
  2.     <Rectangle Margin="80,150">   
  3.         <Rectangle.Fill>   
  4.             <SolidColorBrush x:Name="sb" Color="Green"/>   
  5.         </Rectangle.Fill>   
  6.     </Rectangle>   
  7.     <Grid.Resources>   
  8.         <Storyboard x:Name="std">   
  9.             <ColorAnimation   
  10.                 Duration="0:0:1"   
  11.                 Storyboard.TargetName="sb"   
  12.                 Storyboard.TargetProperty="Color"   
  13.                 From="Red"   
  14.                 To="Blue"   
  15.                 RepeatBehavior="Forever"/>   
  16.         </Storyboard>   
  17.     </Grid.Resources>   
  18. </Grid>   

使用RepeatBehavior="Forever"是為了能讓動畫不斷循環(huán)播放,如果你希望重復3次就設置為3了,F(xiàn)orever就是***重復。

別忘了在后臺代碼中啟動動畫。

  1. public MainPage()   
  2. {   
  3.     InitializeComponent();   
  4.     this.Loaded += (sender, e) => { std.Begin(); };   
  5. }   

現(xiàn)在,你運行應用程序,你會看到很精彩的東西,比《西施秘史》還要精彩。

按照我的習慣,一個例子是不夠的,想不想來一個更爽的?如果你想,就繼續(xù);如果你不想,請拔掉電腦電源。

接下來我們做一個對漸變畫填充進行顏色動畫處理,上面的例子,只是針對單色畫刷,下面我們干漸變的。

  1. <Grid>   
  2.     <Ellipse HorizontalAlignment="Center"   
  3.              VerticalAlignment="Center"   
  4.              Width="400" Height="400">   
  5.         <Ellipse.Fill>   
  6.             <RadialGradientBrush Center="0.5,0.5"   
  7.                                  RadiusX="0.5"   
  8.                                  RadiusY="0.5">   
  9.                 <GradientStop x:Name="g1" Color="Yellow" Offset="0"/>   
  10.                 <GradientStop x:Name="g2" Color="Green" Offset="0.5"/>   
  11.                 <GradientStop x:Name="g3" Color="Red" Offset="1"/>   
  12.             </RadialGradientBrush>   
  13.         </Ellipse.Fill>   
  14.     </Ellipse>   
  15.     <Grid.Resources>   
  16.         <Storyboard x:Name="std">   
  17.             <ColorAnimation   
  18.                 Duration="0:0:2"   
  19.                 Storyboard.TargetName="g1"   
  20.                 Storyboard.TargetProperty="Color"   
  21.                 From="LightBlue" To="Green"   
  22.                 RepeatBehavior="Forever"/>   
  23.             <ColorAnimation   
  24.                 Duration="0:0:3"   
  25.                 Storyboard.TargetName="g2"   
  26.                 Storyboard.TargetProperty="Color"   
  27.                 From="Orange" To="Snow"   
  28.                 RepeatBehavior="Forever"/>   
  29.             <ColorAnimation   
  30.                 Duration="0:0:1"   
  31.                 Storyboard.TargetName="g3"   
  32.                 Storyboard.TargetProperty="Color"   
  33.                 From="Yellow" To="Red"   
  34.                 RepeatBehavior="Forever"/>   
  35.         </Storyboard>   
  36.     </Grid.Resources>   
  37. </Grid>   

后臺代碼還是不能忘,不然就啟動不了動畫了。

  1. public Page1()   
  2. {   
  3.     InitializeComponent();   
  4.     this.Loaded += (sender, e) => { std.Begin(); };   
  5. }   

現(xiàn)在,你運行一下,保證比上面的精彩,管你信不信,反正你運行一下就會信了。

 

責任編輯:閆佳明 來源: oschina
相關推薦

2013-04-24 13:19:06

Windows Pho動畫DoubleAni

2013-04-24 13:43:10

Windows Pho動畫PointAnim

2013-04-25 11:25:38

Windows PhoWindows Pho

2013-07-31 13:13:50

Windows PhoMVVM模式

2013-04-19 17:11:02

Windows PhoWindows Pho

2013-07-31 13:36:07

Windows PhoVS調試技巧Windows Pho

2013-04-23 16:55:15

Windows Pho路徑之其它Geomet

2013-07-30 12:37:56

Windows PhoWindows Pho

2013-04-24 13:51:48

Windows PhoWindows Pho

2013-04-24 14:52:53

Windows PhoWindows Pho

2010-04-21 17:07:54

Windows Pho

2013-04-24 15:28:02

Windows PhoWindows Pho

2011-06-07 12:42:15

Windows Pho

2013-04-17 14:00:06

Windows PhoWindows Pho

2013-04-16 17:02:50

Windows Pho概論

2013-04-19 16:34:56

Windows PhoWindows Pho

2013-07-30 11:18:37

Windows PhoWindows Pho

2010-08-06 15:44:28

Windows PhoWindows PhoSilverlight

2010-04-08 17:40:23

Windows Pho

2013-04-17 13:27:04

Windows PhoWindows Pho
點贊
收藏

51CTO技術棧公眾號