2011-11-09 8 views
1

私は何かを読み込んでいるときにアニメーション化された画像を表示したいのですが、既にアニメーション化された.gifファイルを追加しようとしましたが、WP7はそのファイルをサポートしていないようです...WP7でアニメーション画像を表示

enter image description here

私は2Dのゲームのようにスプライトシートをスクロールする方法を作るために考えていますが、それはそのような方法を作るためにあまりにも多くの努力が必要であろうと私は」:

画像は、このような負荷なものですそれが銀色で動作するかどうかわからない、他の簡単な解決策ですか?

+1

アニメーションGIFをSilverlightでサポートされていない - 。..ボスのように動作します – BrokenGlass

答えて

4

XAMLベースのローダーを前にDean Chalk'sに適用しました。それはオーバーレイとしてかなりうまくいく。バックグラウンドで作業をしていないときは、VisibilityをHiddenに設定し、バックグラウンドで作業中にローディングインジケータでUIの一部をブロックする場合は、Visibleに切り替えてください。アニメーションはXAMLで定義されているため、回転させるためのコードやトリッキーは必要ありません。これは、WPFである

<Canvas RenderTransformOrigin="0.5,0.5" Width="120" Height="120"> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="20.1696" Canvas.Top="9.76358" 
     Stretch="Fill" Fill="#E6000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="2.86816" Canvas.Top="29.9581" 
     Stretch="Fill" Fill="#CD000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="5.03758e-006" Canvas.Top="57.9341" 
     Stretch="Fill" Fill="#B3000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="12.1203" Canvas.Top="83.3163" 
     Stretch="Fill" Fill="#9A000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="36.5459" Canvas.Top="98.138" 
     Stretch="Fill" Fill="#80000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="64.6723" Canvas.Top="96.8411" 
     Stretch="Fill" Fill="#67000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="87.6176" Canvas.Top="81.2783" 
     Stretch="Fill" Fill="#4D000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="98.165" Canvas.Top="54.414" 
     Stretch="Fill" Fill="#34000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="92.9838" Canvas.Top="26.9938" 
     Stretch="Fill" Fill="#1A000000"/> 
    <Ellipse Width="21.835" Height="21.862" Canvas.Left="47.2783" Canvas.Top="0.5" 
     Stretch="Fill" Fill="#FF000000"/> 
    <Canvas.RenderTransform> 
     <RotateTransform x:Name="SpinnerRotate" Angle="0" /> 
    </Canvas.RenderTransform> 
    <Canvas.Triggers> 
     <EventTrigger RoutedEvent="ContentControl.Loaded"> 
      <BeginStoryboard> 
       <Storyboard> 
        <DoubleAnimation Storyboard.TargetName="SpinnerRotate" 
          Storyboard.TargetProperty="(RotateTransform.Angle)" 
          From="0" To="360" Duration="0:0:01" 
          RepeatBehavior="Forever" /> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger> 
    </Canvas.Triggers> 
</Canvas> 

You can click this link for more details.ので、それはWP7のためにそれを適応させるためにいくつかの作業が必要な場合があります:

ここでは、関連するビットです。

ところで、私が「オーバーレイ」と言うときは、ある要素を別の要素の上に置くことを意味します。以下のような:

<Grid> 
    <t:MyUserControl /> 
    <t:MyOverlayUserControl Visibility="Hidden" /> 
</Grid> 
+0

選択肢を – SKandeel

+0

@SherifMaherEaidを「アニメーションGIF Silverlightを」グーグル:私はlol'd – Will

2

残念ながら、アニメーションGIFはSilverlightではサポートされていません。私にとって、Blendと、無限再帰を使って上に掲示したものに似たベクタグラフィックを使用すると、うまくいきます。あなたがそれを再利用する場合は、ユーザーコントロールを作成してみてください。

関連する問題