绑定到文本 属性 ios-统一无效
Binding to Text property ios-unified not working
我将我的 xamarin ios-项目更新为统一的 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 更改为 "don't link"。同样的问题。
谁能给我解释一下,这是怎么回事?谢谢
编辑
我在调试我的项目时在输出中发现了一个信息:
Weak Target is null in MvxUILabelTextTargetBinding - skipping set
最新 Xamarin "stable" 版本中的新 GC 有一些人看到了一些问题,其他人没有看到(可能是 VS 和 XS 之间的差异 - 目前还不清楚...)。您可以在 https://github.com/MvvmCross/MvvmCross/issues/902 (with some background on )
上阅读这些内容
在 http://slodge.blogspot.co.uk/2015/02/351-alpha-release.html 中尝试解决这些问题 - 请尝试 alpha 包,看看它们是否有帮助。
如果不是,那么目前唯一可接受的解决方法是将您的 UILabel
提升为视图中的私有变量。
我将我的 xamarin ios-项目更新为统一的 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 更改为 "don't link"。同样的问题。
谁能给我解释一下,这是怎么回事?谢谢
编辑
我在调试我的项目时在输出中发现了一个信息:
Weak Target is null in MvxUILabelTextTargetBinding - skipping set
最新 Xamarin "stable" 版本中的新 GC 有一些人看到了一些问题,其他人没有看到(可能是 VS 和 XS 之间的差异 - 目前还不清楚...)。您可以在 https://github.com/MvvmCross/MvvmCross/issues/902 (with some background on
在 http://slodge.blogspot.co.uk/2015/02/351-alpha-release.html 中尝试解决这些问题 - 请尝试 alpha 包,看看它们是否有帮助。
如果不是,那么目前唯一可接受的解决方法是将您的 UILabel
提升为视图中的私有变量。