我将xamarin ios-project更新为统一的API(64位支持)。一切都按预期进行。该项目的建设和工作。
但是我发现了一个问题。绑定到UILabel.Text属性将不再起作用。所有其他绑定仍然有效(例如,绑定到UIButton.Hidden属性)。这是我的代码:
// Create bindings
var set = this.CreateBindingSet<MyView, MyViewModel>();
set.Bind(labelitem) // not working
.For(t => t.Text)
.To(v => v.MyStringValue);
set.Bind(buttonitem) // working
.For(b => b.Hidden)
.To(v => v.MyboolValue)
.WithConversion(new InverseBoolValueConverter());
set.Apply();
我正在使用MvvmCross进行绑定。由于统一更新,一切正常。
首先,我尝试将Linker-Option更改为“ not link”。同样的问题。
谁能解释我,这是怎么回事?谢谢
编辑
在调试项目时,我在输出中找到了一个信息:
MvxUILabelTextTargetBinding中的弱目标为空-跳过设置
在最新的Xamarin“稳定”版本中,有些人看到了某些问题,而其他人却没有看到(也许VS和XS之间存在差异-尚不清楚...)。您可以在https://github.com/MvvmCross/MvvmCross/issues/902上了解这些内容(具有一些有关迁移到Unified API和新引用计数的背景)
在http://slodge.blogspot.co.uk/2015/02/351-alpha-release.html中尝试解决这些问题-请尝试使用alpha软件包以查看它们是否有帮助。
如果不是,那么目前唯一接受的解决方法是将UILabel
您的视图提升为私有变量。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句