我有一個UISeekbar和位於內部的MvxViewUISlider沒有更新到綁定視圖模型屬性
_currentPositionText = new UILabel { TextColor = UIColor.White };
_seekBar = new UISlider
{
MinValue = 0,
Continuous = true,
AutoresizingMask = UIViewAutoresizing.FlexibleWidth
};
_seekBar.TouchDown += OnTouchDown;
_seekBar.TouchUpInside += OnTouchUpInside;
_seekBar.TouchDragInside += OnDragInside;
我設置的綁定如下
set.Bind(_seekBar).For(sb => sb.Value).To(vm => _viewModel.CurrentPositionMsec);
set.Bind(_seekBar).For(sb => sb.MaxValue).To(vm => _viewModel.DurationMsec);
set.Bind(_currentPositionText).To(vm => vm.CurrentPositionText);
如果我加入一些跟蹤一個UILabel CurrentPositionMsec
的get
內的代碼,我可以看到屬性每秒更新一次(如預期)。
注意:同樣的方法也更新CurrentPositionText
只需將毫秒格式化爲TimeSpan。
_currentPositionText
的綁定正在按預期更新,但_seekBar
不更新滑塊位置。
預期的結果是滑塊每秒更新一次,基於CurrentPositionMsec
。
我在Android中使用以下綁定工作,並且Android和iOS都共享相同的viewModel。
<SeekBar
android:Foo=""
android:Bar=""
local:MvxBind="Max DurationMsec; Progress CurrentPositionMsec" />
我沒有設置正確的東西嗎?這個「應該」工作AFAIK。