一、在WP8.1中是有动画(Animation)的:
页面导航(默认为旋转式Turnstile)、PointerDown/up(默认是倾斜)、页面旋转、MenuFlyout出现等等
二、页面过渡(Page transition)
1、默认的动画是旋转式(Turnstile)。
2、除了默认的动画,我们还可以运用ContinuumNavigationTransitionInfo、Stagger、Slide等类似过渡。
三、重写默认过渡/动画
(1)在控件中,我们可以这样做,XAML代码如下:
<!--如在控件ListView中--!> <ListView x:Name="groupListView" ItemsSource="{Binding AllGroups}" SelectionChanged="lstGroups_SelectionChanged" ItemTemplate="{StaticResource RecipeGroupDataTemplate}" CommonNavigationTransitionInfo.IsStaggerElement="True"/> <!--如在控件TextBlock中--!> <TextBlock Text="{Binding Title}" Grid.Column="1" Grid.Row="0" Style="{StaticResource ListViewItemTextBlockStyle}" Margin="10,0,0,0" ContinuumNavigationTransitionInfo.IsExitElement="True"/>
<!--GridView--!> <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid.ChildrenTransitions> <TransitionCollection> <EntranceThemeTransition/> </TransitionCollection> </Grid.ChildrenTransitions> <Grid.RowDefinitions> <RowDefinition Height="140"/> <RowDefinition Height="*"/> </Grid.RowDefinitions>
(注:EntranceThemeTransition可以被应用在当页面的内容在第一次加载时,进而被呈现出来,从而第一次内容呈现可以提供不同的视觉。)
(2)、改变页面的默认过渡画面
<Page.Transitions> <TransitionCollection> <NavigationThemeTransition> <NavigationThemeTransition.DefaultNavigationTransitionInfo> <SlideNavigationTransitionInfo /> </NavigationThemeTransition.DefaultNavigationTransitionInfo> </NavigationThemeTransition> </TransitionCollection> </Page.Transitions>
三、总结:
1、主题过渡可以应用在有UIElement.Transitions属性的单个XAML元素或者可以应用在有特定主题的过渡属性的,如ContentControl.ContentTransitions
2、值得注意的转换:AddDeleteThemeTransition、 EntranceThemeTransition、 PopupThemeTransition、 ReorderThemeTransition、 RepositionThemeTransition.等更多
时间: 2024-10-17 19:54:34