MVVM Light Xamarin.Android - UI控件在经过一段时间后不会更新

时间:2015-02-16 09:18:30

标签: mvvm-light

问题出现在ca. 2分钟过去了(大约1800次更新)。即使加速度计更新仍然有效,TextViews也会毫无理由地停止更新。我们的团队正在研究多线程应用程序,我们必须在UI线程上更新一些UI控件值(这可能就是问题出现的原因)。我们花了很多时间试图找出可能出现的问题,最后我们决定将其作为一个问题进行报告。我已经准备了一些基于加速度计功能的示例代码,但实际上当我们尝试使用其他硬件设备或传感器(例如蓝牙)时会出现同样的问题。以下是示例应用程序存储库的链接:

https://mvvmlightbug.visualstudio.com/DefaultCollection/_git/MVVM%20Light%20bug#path=%2F&version=GBmaster&_a=contents

1 个答案:

答案 0 :(得分:0)

在调试过程中,我发现垃圾收集器以某种方式删除了我的绑定。这是因为MVVMLight for Android库中的WeakReference使用。我已经用对象类型替换了所有WeakReferences,从那以后就没有问题了。

对于MVVMLight创建者:请确保WeakReferences是最佳解决方案 - 您应该更换它们,因为Android的GC正在无缘无故地删除绑定。