1

我最近一直在探索 MVVMCross for android,我遇到了 Dynamic Fragments,我对用法有点困惑。我对这个话题相当陌生,所以我提前道歉。

我想使用带有测验应用示例的片段进行测试。在页面底部显示一个问题,带有一个后退和上一个按钮,用于在问题之间导航。问题下方将显示一个答案选择,它是一种响应类型,必须根据问题类型动态变化。

例如,第一个问题可能会问“你同意夏天是一年中最好的季节吗?” 并将响应类型设置为无线电组(即同意、中立、不同意),下一个问题可能会问“你叫什么名字?” 具有自由响应的响应类型(即编辑文本框)。

使用FrameLayouts是我最好的选择吗?如何通过使用FrameLayouts和引用来更新视图的响应类型部分ResponseType ViewModel

任何指导将不胜感激!谢谢!

4

1 回答 1

0

使用 FrameLayouts 是我最好的选择吗?

我认为有很多方法可以实现 - 使用片段,使用 MvxFrameControl,使用自定义控件,甚至使用数据绑定 ListView 或 LinearLayout(利用其模板选择)。

找出哪个“最好”的唯一方法是试一试。

如何通过使用 FrameLayouts 并引用 ResponseType ViewModel 来更新视图的响应类型部分?

您可以使用某种 ViewModel 类型来查看视图类型查找 - 例如在http://enginecore.blogspot.co.uk/2013/06/more-dynamic-android-fragments-with.html

或者你可以在多态列表适配器中使用一些代码 - 例如https://github.com/slodge/MvvmCross-Tutorials/blob/master/Working%20With%20Collections/Collections.Droid/Views/PolymorphicListItemTypesView.cs

对于一小组答案类型,不要觉得您必须进行太多设计 - 一个小switch语句或一个小查找Dictionary应该可以工作。

主要建议是对几种方法进行原型制作 - 尝试看看哪些方法适用于您的应用。

于 2013-06-28T18:54:24.613 回答