Android MVP 架构介绍与使用入门( 三 )


(4)View 层:
package com.test.mvp.mvpdemo.mvp.v1.view; import android.app.ProgressDialog;import android.os.Bundle;import android.os.Handler;import android.support.v7.app.AppCompatActivity;import android.widget.TextView;import android.widget.Toast; import com.test.mvp.mvpdemo.R;import com.test.mvp.mvpdemo.mvp.v1.MainContract;import com.test.mvp.mvpdemo.mvp.v1.presenter.MainPresenter; /** * MVP 的写法,Version 1: 基础写法 */public class MainActivity extends AppCompatActivity implements MainContract.IMainView {private TextView tv;private MainPresenter mPresenter;@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);initViews();mPresenter = new MainPresenter(this); mPresenter.handlerData(); }private void initViews() { tv = findViewById(R.id.tv); }@Override public void showDialog() { ProgressDialog dialog = new ProgressDialog(this); dialog.show(); new Handler().postDelayed(new Runnable() { @Override public void run() { dialog.dismiss(); } }, 1500); }@Override public void succes(String content) { runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(MainActivity.this, "" + content, Toast.LENGTH_SHORT).show(); tv.setText(content); } }); }}使用 MVP 架构,我们可以做到 Model 层和 Presenter 层的复用,如果不同的 Veiw 层需要相同的数据,那么就无需修改 Model 层和 Presenter 层,直接实现接口就可以了 。
到此为止,一个从网络获取数据并显示的案例就被我们改写为 MVP 架构了,这是最基础的 MVP 的入门版本,其中精要的就是interface 接口的使用,而接口的用法也是 Java 的基础,所以本篇文章内容应该不难理解 。而 MVP 架构也无需引入哪些库、框架啊等等,它更是一种编程架构、编程思想,并且现在也非常流行,所以我们一定要搞定它 。
最后如果你看到了这里,觉得文章写得不错就给个赞呗!欢迎大家评论讨论!如果你觉得那里值得改进的,请给我留言 。一定会认真查询,修正不足,定期免费分享技术干货 。谢谢!




推荐阅读