MvvmCross:iOS中的绑定进度条
我想知道如何绑定UIProgressView的Progress属性 在设计中包含以下内容:MvvmCross:iOS中的绑定进度条,ios,xamarin.ios,mvvmcross,Ios,Xamarin.ios,Mvvmcross,我想知道如何绑定UIProgressView的Progress属性 在设计中包含以下内容: [Outlet] MonoTouch.UIKit.UIProgressView ProgressIndicator { get; set; } 我尝试了以下方法: set.Bind(ProgressIndicator).For(p => p.Progress).To(vm => vm.IosProgress); set.Bind(ProgressIndicator).For("Progres
[Outlet]
MonoTouch.UIKit.UIProgressView ProgressIndicator { get; set; }
我尝试了以下方法:
set.Bind(ProgressIndicator).For(p => p.Progress).To(vm => vm.IosProgress);
set.Bind(ProgressIndicator).For("Progress").To(vm => vm.IosProgress);
在ViewModel中,我有:
private float _iosProgress;
public float IosProgress
{
get { return _iosProgress; }
set { _iosProgress = value; RaisePropertyChanged(()=>IosProgress); }
}
按要求更新:-我有一台带iOS7的iPhone 4。
-我尝试将IosProgress指示器绑定到一个标签上,效果非常好,测试了3个值,0.33333、0666667和1个显示在标签上 我为您创建了两个屏幕截图
谢谢大家! 我刚刚用
UIProgressView
在中尝试了SeekView
public override void ViewDidLoad()
{
base.ViewDidLoad();
var label = new UILabel(new RectangleF(10, 100, 100, 30));
label.Text = "Slide me:";
Add(label);
var seek = new UISlider(new RectangleF(110, 100, 200, 30));
seek.MinValue = 0;
seek.MaxValue = 100;
Add(seek);
var pro = new UIProgressView(new RectangleF(110, 130, 200, 30));
Add(pro);
var set = this.CreateBindingSet<SeekView, SeekViewModel>();
set.Bind(seek).To(vm => vm.SeekProperty);
set.Bind(pro).For(v => v.Progress).To("SeekProperty / 100");
set.Apply();
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
var标签=新UILabel(新矩形F(10,100,100,30));
label.Text=“幻灯片我:”;
添加(标签);
var seek=新的UISlider(新的矩形f(110100200,30));
seek.MinValue=0;
seek.MaxValue=100;
添加(搜索);
var pro=新的UIProgressView(新的矩形F(110、130、200、30));
添加(pro);
var set=this.CreateBindingSet();
set.Bind(seek).To(vm=>vm.SeekProperty);
set.Bind(pro).For(v=>v.Progress.To)(“SeekProperty/100”);
set.Apply();
}
这与iOS7 iPhone模拟器上的预期完全一样
我遇到的唯一问题是,如果
ViewModel
属性超出了0.0f
到1.0f
范围。查看文档和intellisense,我认为Progress
应该自动绑定。当您尝试使用set.Bind(ProgressIndicator).For(p=>p.Progress.to)(vm=>vm.IosProgress)时,在跟踪中会收到哪些消息代码>。如果您可以包括正在运行的iOS设备和版本,并且还可以将ioprogress
绑定到UILabel
的文本,以检查其是否正在按预期进行更改,则可能会有所帮助。请参见kProperty/100
=>Mind=blow*100