MVP契约类

博客主要介绍了M层调用、p层调用以及Activity调用相关内容,聚焦于信息技术领域中不同层次的调用情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.example.demo4;

import android.view.Window;

import com.example.demo4.Bean.BannerBean;

import java.util.List;

import okhttp3.Callback;

/**
 * @Auther: luck
 * @Date: 2019/3/19 11:39:46
 * @Description:
 */
public interface Contractclass {

    public interface DataPresenter{

        public void attachView(Contractclass.Dataview dataview);
        public void destory();
        public void requestData();


    }

    public interface Dataview{
        public void showBannnerDada(List<BannerBean.ResultBean> result);
        public void ShowDada(List<BannerBean.ResultBean> result);
    }

    public interface dataModel{

        public void responeseMode(Callback callback);
        public interface Callback{
            public void getBannnerDada(List<BannerBean.ResultBean> result);
            public void getShowDada(List<BannerBean.ResultBean> result);
        }

    }



}

M层调用

package com.example.demo4;

import com.example.demo4.Api.Api;
import com.example.demo4.Bean.BannerBean;
import com.example.demo4.Utils.Ustils;
import com.google.gson.Gson;

import java.util.List;

/**
 * @Auther: luck
 * @Date: 2019/3/19 11:44:46
 * @Description:
 */
public class MOdel implements Contractclass.dataModel{
    @Override
    public void responeseMode( final Callback callback) {
        Ustils.getInstance().doGet(Api.ApiBanner2).setHttpListener(new Ustils.HttpListener() {
            @Override
            public void success(String result) {
                Gson gson = new Gson();
                BannerBean bannerBean = gson.fromJson(result, BannerBean.class);
                List<BannerBean.ResultBean> result1 = bannerBean.getResult();
                callback.getBannnerDada(result1);
            }

            @Override
            public void failure(String error) {

            }
        });

    }
}

p层调用

package com.example.demo4;

import com.example.demo4.Bean.BannerBean;
import com.example.demo4.Model.Model;

import java.util.List;

/**
 * @Auther: luck
 * @Date: 2019/3/19 11:47:36
 * @Description:
 */
public class Presenterttwo implements Contractclass.DataPresenter{

    private MOdel model= new MOdel();



    @Override
    public void attachView(final Contractclass.Dataview dataview) {
        model.responeseMode(new Contractclass.dataModel.Callback() {
            @Override
            public void getBannnerDada(List<BannerBean.ResultBean> result) {
                dataview.showBannnerDada(result);
            }

            @Override
            public void getShowDada(List<BannerBean.ResultBean> result) {
                dataview.ShowDada(result);
            }
        });

    }

    @Override
    public void destory() {

    }

    @Override
    public void requestData() {

    }
}

Actity调用


	public class MainActivity extends AppCompatActivity implements 		implements Contractclass.Dataview




  @Override
    public void showBannnerDada(List<BannerBean.ResultBean> result) {
        
    }

    @Override
    public void ShowDada(List<BannerBean.ResultBean> result) {

    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值