MVP

public class MyModel {
    public void getData(String url , final MyModelInfo modelInfo){
        OkHttpClient client = new OkHttpClient();
        Request request = new Request.Builder()
                .url(url)
                .build();
        client.newCall(request).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                modelInfo.getFailSure("完蛋玩意儿,请求失败!!!");
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                modelInfo.getSuccess(response.body().string());
            }
        });

    }
}

 
======
public interface MyModelInfo {
    void getSuccess(String msg);
    void getFailSure(String msg);
}




******

public class MyPresenter {
    MyViewInfo viewinfo;
    MyModel mymodel;
    public MyPresenter(MyViewInfo viewinfo) {
        this.viewinfo = viewinfo;
        mymodel = new MyModel();
    }
    public void doGet(String url) {
        mymodel.getData(url, new MyModelInfo() {
            @Override
            public void getSuccess(String msg) {
                Gson gson = new Gson();
                MyBean myBean = gson.fromJson(msg, MyBean.class);
                viewinfo.showBean(myBean);
            }

            @Override
            public void getFailSure(String msg) {

            }
        });
    }
}
///

public interface MyViewInfo {
    void showBean(MyBean bean);
}
+++++++++++++++

public class MainActivity extends AppCompatActivity implements MyViewInfo {
    private TextView tv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView) findViewById(R.id.tv);

        MyPresenter presenter = new MyPresenter(this);
        presenter.doGet("http://huixinguiyu.cn/Assets/js/data.js");
    }

    @Override
    public void showBean(final MyBean bean) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                tv.setText(bean.apk.get(0).name);
            }
        });
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值