我正在使用 MvvmCross 重构一个应用程序,并且正在获取一个设置视图以在三个平台上显示:WP7、Android 和 iPhone。我创建了一个包含两个列表的 SettingsViewModel。一个带有更新频率来轮询服务器,另一个带有要轮询哪个服务器的信息。这些称为 UpdateFrequencies 和 PublicSites。这两个列表在 SettingsViewModel 中都有一个属性,用于确定选择了哪个 UpdateFrequency 和哪个站点,UpdateFrequency 和 SelectedSite。
在 WP7 上,此数据绑定到 ListPicker,如下所示:
<toolkit:ListPicker
Name="UpdateFrequencies"
ItemsSource="{Binding UpdateFrequencies}"
SelectedItem="{Binding UpdateFrequency, Mode=TwoWay}"
Header="Real-time data update frequency"
/>
类似地,在 Android 上,它绑定到这样的 Spinner:
<cirrious.mvvmcross.binding.android.views.MvxBindableSpinner
android:id="@+id/SpinnerUpdateFrequencies"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
local:MvxDropDownItemTemplate="@layout/spinneritem_updatefrequencydropdown"
local:MvxItemTemplate="@layout/spinneritem_updatefrequency"
local:MvxBind="{'ItemsSource':{'Path':'UpdateFrequencies'},'SelectedItem':{'Path':'UpdateFrequency','Mode':'TwoWay'}}"
/>
现在我正在尝试在 iPhone 上做同样的事情,但我似乎无法理解如何以类似的方式绑定它。我一直在查看我能找到的所有样本,但似乎找不到类似的东西。有人可以指出我正确的方向吗?