我無法理解MVVM究竟是什麼?這怎麼可能讓下面的代碼跟隨MVVM或不是?
它是唯一的方法來確定代碼清理器或類似設計模式,我不能理解什麼是MVVM。
我已經制定了一個簡單的教程,因爲我一直使用DataBinding。如何區分它沒有遵循MVVM?
我在這裏得到簡單的問題,希望我會得到明確的答案與示例。
MainActivity
public class MainActivity extends AppCompatActivity {
ActivityMainBinding activityMainBinding;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
activityMainBinding = DataBindingUtil.setContentView(this, R.layout.activity_main);
User user = new User("Android", "ios", "Blackberry");
activityMainBinding.setVariable(user);
}
}
模態類
public class Client {
String name;
public Client(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
佈局
<data>
<variable
name="variable"
type="com.example.user_pc.databinding.User" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/firstName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:paddingBottom="30dp"
android:text="@{variable.firstName}"
/>
<TextView
android:id="@+id/middleName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:paddingBottom="30dp"
android:text="@{variable.middleName}" />
<TextView
android:id="@+id/lastName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:paddingBottom="30dp"
android:text="@{variable.lastName}" />
</LinearLayout>
這似乎是簡單的問題,但我正在努力理解 MVVM和它的工作flow.All正在不同的目錄中的模型,視圖和視圖模型,它是隻讓direcotry的不同還是什麼?我沒有清楚的概念。
我在這裏得到了一些澄清,我會挖掘full.is MVVM比MVP更好? – Ghimire