2011-07-24 52 views

回答

3

你不知道。除非你想從零開始重寫PanningLayer控件。真的,你爲什麼要這麼做?它違背了默認的平臺UX。

+0

如果我打開全景圖頁面,並且如果導航到全景圖中的第二項並按下開始按鈕,應用程序將被停用。當通過按下硬件後退按鈕再次激活時,在全景中,最後查看的項目必須被聚焦,即第二項(爲了實現豎碑)。我已經做到了。但是,當應用程序被激活時,第一個項目在動畫發生之後首先可見,然後只有第二個項目開始關注。它看起來不太好。這就是爲什麼我問我們是否可以禁用此動畫。在這種情況下,我們也應該不禁用默認動畫? – saikamesh

+0

實際上,它的默認行爲似乎是更改項目的順序,所以最後選擇的項目首先出現。 (請參閱音樂中心)。 –

+0

噓!這取決於應用程序。如果你有一個很棒的加載屏幕,那麼你可以過渡到顯示一個完全合法的pano,不想要旋轉柵格動畫,但會淡入。請參閱狐狸新聞應用程序 – Quincy

1

看起來好像沒有一個好的方法。這是我如何解決它的。基本上將不透明度設置爲0,直到動畫完成,而您的全景背景標題顯示在實際全景圖的背後&。

<Grid x:Name="LayoutRoot"> 

    <Image Source="{Binding BackgroundUri"></Image> 
    <Image Source="{Binding Title}"></Image> 


    <controls:Panorama x:Name="Panorama" ... /> 

    <Grid.Triggers> 
     <EventTrigger RoutedEvent="Grid.Loaded"> 
      <BeginStoryboard> 
       <Storyboard > 
        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="Panorama"> 
         <EasingDoubleKeyFrame KeyTime="0" Value="0"/> 
         <EasingDoubleKeyFrame KeyTime="0:0:1.5" Value="0"/> 
         <EasingDoubleKeyFrame KeyTime="0:0:1.5" Value="1"/> 
        </DoubleAnimationUsingKeyFrames> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger> 
    </Grid.Triggers> 
</Grid>