0

5 から 10 に変更されたビューモデル プロパティにバインドされている UIHealthBar があります。古い値 (5) から新しい値 (10) に塗りつぶされた色でアニメーション化したいと思います。より良いアプローチで mvvmcross でそれを行うにはどうすればよいですか?

4

1 に答える 1

0

これは、ビューモデル プロパティのペアで実行できるように思えます。おそらく、常に一緒に変更されるタプルです。

public class MyViewModel : MvxViewModel
{
    public MyViewModel()
    {
        // subscribe for health updates here
    }

    public class HealthTuple
    {
        public double Old {get;set;}
        public double New {get;set;}
    }

    private HealthTuple _health; 
    public HealthTuple Health 
    {
       get { return _health; }
       set { _health = value; RaisePropertyChanged(() => Health); }
    } 

    private void OnNewHealth(HealthMessage message)
    {
        Health = new HealthTuple() { Old = _health.New, New = message.Value };
    }
}

カスタム UIView -UIHealthBar次に、1 つまたは 2 つのプロパティを公開し、これらを ViewModel の Health 値にバインドできます。ディスプレイの描画/アニメーション化は、「通常の UI キット作業」です。

于 2013-04-23T18:58:29.987 に答える