我一直在玩monodroid / monotouch已经有一段时间了,并且决定从单眼镜头跳到mvvmcross,我遇到了一些问题。
我有一个域模型,其中包含一个子属性,该属性是另一个域对象的列表。有很多,如果你愿意的话。我要做的是显示聚合根对象,并允许用户填写子对象的详细信息。
public class objA
{
public List<objB> mySubObjs
}
我很容易使用MvxBindableListView将其连接起来。除非我无法绑定到objA.mySubObjs,否则我必须将列表提升到ViewModel中的一个级别并绑定到该级别?无论如何,我面临的问题是List的itemtemplate看起来有点像这样
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:layout_marginTop="2dip"
android:layout_marginBottom="2dip">
<TextView
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="a)"
android:textAppearance="?android:attr/textAppearanceSmall" />
<EditText xmlns:local="http://schemas.android.com/apk/res/x.x.x.x"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
local:MvxBind="{'Text':{'Path':'Name'}}" />
</RelativeLayout>
哪个渲染很好,但是不可用。当我点击editText控件时会弹出软键盘,这样就失去了焦点。我在ListView中看过几篇关于EditText的文章并不太好用。
因此,我尝试通过绑定到特定项目(例如objA.mySubObjs [0] .Name)手动构建List视图,但这似乎并未反映在ViewModel中。
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Question"
android:textAppearance="?android:attr/textAppearanceSmall"
local:MvxBind="{'Text':{'Path':'Items[0].Name'}}" />
我有点茫然,并不想真正想要在我的ViewModel中展平List以适应Android View。
任何帮助将不胜感激
答案 0 :(得分:0)
这有用吗 - Focusable EditText inside ListView
。除非我无法绑定到objA.mySubObjs,
关于其他问题,请随意将此问题作为一个单独的问题 - 应该可以......