我有一个移动应用程序。我正在将MVP模式与数据绑定库一起使用。但是我会问一个问题。
我有一个模型类,用于将数据发送到Web服务。
类的名称由CreateTaskBody.java
调用。
@SerializedName("username")
private String email;
@SerializedName("taskName")
private String taskName;
@SerializedName("startDate")
private String startDate;
@SerializedName("endDate")
private String endDate;
我正在将此模型类与数据绑定一起使用。但是我不知道去哪里上这个模型课。
示例
1) 片段类
binding.get.setPresenter(myPresenter);
presenter.body.dateString = "ASDASDASD";
以XML
<variable
name="presenter"
type="net.asd.ui.tasks.createtask.CreateTaskPresenterImpl"/>
android:text="@{presenter.body.dateString}" />
OR
2) 片段类
CreateTaskBody body = new CreateTaskBody();
body.dateString = "ASDASDASD";
以XML
<variable
name="body"
type="net.asd.model.tasks.createtask.CreateTaskBody"/>
android:text="@{body.dateString}" />
我应该使用其中哪些结构? 1还是2?
答案 0 :(得分:0)
除了下面的代码外,请按照第二种方式进行操作。
presenter.body = new CreateTaskBody(); // set model in presenter
binding.body = presenter.body; // now set layout model referred to presenter model
实际上,通过这种方式,您不会破坏MVP模式,因为您的布局模型仍称为演示者模型。相反,如果您直接在布局中传递不会遵循MVP模式的模型。