ホーム画面でSMSとメールの未読数を表示するようなカウンターを表示するには、Windows Phoneコントロール(またはソースコード)を探しています。例えば、値が2から5に変化すると、3,4、および5の短いアニメーションが表示されます。ホーム画面の未読数に似たアニメーションを反転する
1
A
答えて
2
一方的にはReactive Extension
を使用します。
まず、Microsoft.Phone.Reactive
とSystem.Observable
の参照が必要です。
私のxamlページではNumberTextBlock
というTextBlock
を定義しました。またStoryboard
を作成してText
の外観をScaleY
に変更してアニメートしました。私のコードビハインドで
<phone:PhoneApplicationPage.Resources>
<Storyboard x:Name="Storyboard1">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.ScaleY)" Storyboard.TargetName="NumberTextBlock">
<EasingDoubleKeyFrame KeyTime="0" Value="0.8"/>
<EasingDoubleKeyFrame KeyTime="0:0:0.1" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</phone:PhoneApplicationPage.Resources>
<Grid x:Name="LayoutRoot" Background="Transparent">
<TextBlock x:Name="NumberTextBlock" VerticalAlignment="Center" HorizontalAlignment="Center" Style="{StaticResource PhoneTextTitle1Style}">
<TextBlock.RenderTransform>
<CompositeTransform />
</TextBlock.RenderTransform>
</TextBlock>
</Grid>
、私は、生成されたシーケンスに時間ディメンションを追加しGenerateFromTime()
呼ばRx
からメソッドを使用していました。 TimeSpan.FromMilliseconds(100)
ここでは各番号の間の遅延です。
public MainPage()
{
InitializeComponent();
this.Loaded += new RoutedEventHandler(MainPage_Loaded);
}
private void MainPage_Loaded(object sender, RoutedEventArgs e)
{
var getNumbers = this.GetNumbers(10);
getNumbers.ObserveOnDispatcher().Subscribe(ChangeNumberTextBlock);
}
private void ChangeNumberTextBlock(int number)
{
this.NumberTextBlock.Text = number.ToString();
Storyboard1.Begin();
}
private IObservable<int> GetNumbers(int total)
{
return Observable.GenerateWithTime(0, i => i <= total, i => i, _ => TimeSpan.FromMilliseconds(100), i => ++i);
}
あなたはhereとhere (Silverlight TV)からRx
についての詳細を読むことができます。
これが役に立ちます。 :)
関連する問題
- 1. Androidのホーム画面数
- 2. ホーム画面アイコン
- 3. アニメーション読み込み画面
- 4. 3DTouchホーム画面クイックアクション
- 5. Androidホーム画面ウィジェット
- 6. その反転時に画像を変更したいアニメーションandroid
- 7. ホーム画面にアプリをインストールするandroid
- 8. Android反転アニメーション
- 9. スマートフォンのホーム画面のブックマークボタン
- 10. ホーム画面チューザーを起動
- 11. 画面のタイムアウト後にアプリケーションをホーム画面にリダイレクト
- 12. Webアプリケーションのホーム画面スライドエフェクト
- 13. ポリマーウェブアプリケーションIOSのホーム画面
- 14. Windows 7のホーム画面に戻る
- 15. ホーム画面を再開する
- 16. iPhoneのアニメーション読み込み画面
- 17. Androidカスタムランチャーまたはホーム画面
- 18. glVertex2f()で描画された図面を反転しますか?
- 19. ネイティブ検出画面の回転に反応する
- 20. アプリを起動せずにホーム画面のアクションを表示する、3DTouchホーム画面クイックアクション
- 21. 私の画面を反転させたい
- 22. ホーム画面にアンドロイドアプリのショートカットの位置
- 23. iPhoneの「ホーム画面に追加」のJavascript?
- 24. テクスチャの読み込み中に画面をアニメーション化する
- 25. アプリケーションクラッシュで最初の画面/ホーム画面に移動
- 26. Androidのホーム画面に追加基本
- 27. Chromeのネイティブアプリインストールバナーとホーム画面に追加
- 28. Macで画面の色をプログラムで反転する方法
- 29. ブルースタックスが画像の画像変更でホーム画面に戻る
- 30. Dockはアラーム画面と似ています(アニメーション付きhorizontalscroll)
私は上記の答えが大好きですが、明らかにその解決策は実行中のアプリケーション内でのみ動作します。現在、メールタイルと同じアニメーション動作をフロントスクリーンタイルに複製する方法はありません。あなたができることは、バックグラウンドエージェントからタイルのいくつかの画像をプッシュすることですが、フレームワークの機能ほど滑らかではありません。 – Darkside
私はカスタムタイルではなく、私のアプリの中に入れようとしています。私は新書の解を他のストーリーボードと組み合わせることができるかどうかを見極めるつもりです... – japf
どうしたらいいか教えてください。 :) –