Windows Phone開發(38):動畫之PointAnimation

來源:互聯網
上載者:User

PointAnimation也是很簡單的,與前面說到的兩個Animation是差不多的,屬性也是一樣的,如By、From、To,不同的是,PointAnimation是目標值從一點到另一個點。

我有理由相信,大家一定懂的,所以,我不多介紹了,給兩個例了熱一下身就行了。

例一,讓直線動起來。

這個例子,以LineGeometry作為動畫的目標對象,通過對StartPoint屬性和EndPoint屬性進行動畫來讓直線(其實是線段)動起來。

    <Grid>        <Path HorizontalAlignment="Stretch" VerticalAlignment="Stretch"              Stroke="Orange" StrokeThickness="6">            <Path.Data>                <LineGeometry x:Name="lg" StartPoint="25,32" EndPoint="185,97"/>            </Path.Data>        </Path>        <Grid.Resources>            <Storyboard x:Name="std" RepeatBehavior="Forever" AutoReverse="True">                <PointAnimation Duration="0:0:5"                                Storyboard.TargetName="lg"                                Storyboard.TargetProperty="StartPoint"                                To="20,375"/>                <PointAnimation Duration="0:0:5"                                Storyboard.TargetName="lg"                                Storyboard.TargetProperty="EndPoint"                                To="407,490"/>            </Storyboard>        </Grid.Resources>    </Grid>

記得了,在頁面的Loaded事件中啟用動畫。

        // 建構函式        public MainPage()        {            InitializeComponent();            this.Loaded += (sender, e) =>                {                    this.std.Begin();                };        }

例二,對曲線進行動畫。

本例對BezierSegment的三個點進行動畫,即使貝茲路徑“遊動”起來。

    <Grid>        <Path HorizontalAlignment="Stretch" VerticalAlignment="Stretch"              Stroke="LightGreen" StrokeThickness="12">            <Path.Data>                <PathGeometry>                    <PathFigure StartPoint="180,35">                        <BezierSegment x:Name="pbm"                                        Point1="28,180"                                       Point2="200,270"                                       Point3="412,700"/>                    </PathFigure>                </PathGeometry>            </Path.Data>        </Path>        <Grid.Resources>            <Storyboard x:Name="std" RepeatBehavior="Forever" AutoReverse="True">                <PointAnimation Duration="0:0:3"                                Storyboard.TargetName="pbm"                                Storyboard.TargetProperty="Point1"                                From="27,162" To="415,145"/>                <PointAnimation Duration="0:0:3"                                Storyboard.TargetName="pbm"                                Storyboard.TargetProperty="Point2"                                To="600,400"/>                <PointAnimation Duration="0:0:3"                                Storyboard.TargetName="pbm"                                Storyboard.TargetProperty="Point3"                                To="10,700"/>            </Storyboard>        </Grid.Resources>    </Grid>

後台代碼就是在Loaded事件中啟用動畫,這個大家應該會了。

 

 

好了,這節課就這樣很輕鬆地過了。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.