我有一个 ListView ,它绑定(bind)到一个字符串数组:
<Mvx.MvxListView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
local:MvxBind="ItemsSource StringArray"
local:MvxItemTemplate="@layout/listitem_view" />
我的项目模板只是一个 TextView ...
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
使用 JSON 绑定(bind)很好...
local:MvxBind="{'Text':{'Text':''}}" />
再次使用瑞士...
local:MvxBind="Text " />
但是在将 Mvx 更新到 3.10 之后,我现在没有将任何内容绑定(bind)到我的 TextView ,即使列表仍然绑定(bind)到 ListView 。 Rio 绑定(bind)中的语法是否更改了默认行为?
最佳答案
在 3.0.10 中没有对此区域进行有意的更改 - 尽管对此有修复 Error when making bind ObservableCollection<string> for a MvxListView - 修复是 https://github.com/slodge/MvvmCross/commit/d325fb75eaeeb8e470e0ac551f2b69b441f7b285 .我相信这是在 3.0.10 中发布并用于测试应用程序的。
Has the syntax in Rio binding changed the default behaviour?
我不知道是否有人在作为 Rio 扩展的一部分的 MethodBinding 或 FieldBinding 中看到过这些问题。我没听说过。
如果这被破坏 - 并且取决于它是否由于绑定(bind)引擎(西藏)或方法和字段扩展(里约热内卢)或其他原因而被破坏,那么可能的解决方法包括:
- 离开里约热内卢
- 使用句号“.”替代空白空间 - 例如
local:MvxBind="文本。"
- 添加一个
公共(public)对象 HackSelf { get { return this; }
属性到绑定(bind)对象并绑定(bind)到那个local:MvxBind="Text HackSelf"
- 覆盖已注册的绑定(bind)引擎(例如返回瑞士)
如果这被破坏了——在 github 上为此记录一个问题可能也是一个好主意——包括加载的模块、用例、使用的版本、看到的任何可疑跟踪输出以及返回此处的链接。
关于android - 在 MvvmCross 中使用 Rio 默认绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18205096/