android简单版刷新加载,XrecycleView

效果图
在这里插入图片描述
gradle依赖库

  implementation 'com.android.support:recyclerview-v7:26.1.0'
implementation 'com.squareup.okhttp3:okhttp:3.12.0'
implementation files('libs/gson-2.3.1.jar')
implementation files('libs/universal-image-loader-1.9.5.jar')
implementation ('com.jcodecraeer:xrecyclerview:1.5.9'){
    exclude group: 'com.android.support'
}
implementation "com.android.support:design:26.1.0"

使用xrecycleview如果没有design依赖库,切记一定要写,不然项目直接报错,找不到该类
布局
activity_main.xml

 <EditText
   android:hint="搜索"
   android:layout_width="match_parent"
   android:layout_height="wrap_content" />
 <com.jcodecraeer.xrecyclerview.XRecyclerView
    android:id="@+id/recy"
    android:layout_width="match_parent"
    android:layout_height="match_parent">	</com.jcodecraeer.xrecyclerview.XRecyclerView>

条目布局自己看心情布置
mvp有点多,我就不写了,我的那个切换布局里用的方法和这个一样,可以参考,我就只简单的写下主页面吧
**

MainActivity

**

public class MainActivity extends AppCompatActivity implements MainView {

/*private RecyclerView recyclerView;*/
private XRecyclerView recyclerView;
private MainAdapter adapter;
 private MainPresenter mainPresenter=new MainPresenter(this);
 private  int page=1;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    initView();
    mainPresenter.showGoods(page);
    //上拉加载下拉刷新
    initRefresh();
   }

private void initRefresh() {
    recyclerView.setLoadingListener(new XRecyclerView.LoadingListener() {
        @Override
        public void onRefresh() {
            //更新UI
            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    page=1;
                    mainPresenter.showGoods(page);
                    recyclerView.refreshComplete();
                    Toast.makeText(MainActivity.this, "刷新完成", Toast.LENGTH_SHORT).show();
                }
            },2000);

        }

        @Override
        public void onLoadMore() {
            //更新UI
            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    page++;
                    mainPresenter.showGoods(page);
                    recyclerView.loadMoreComplete();
                    Toast.makeText(MainActivity.this, "加载完成", Toast.LENGTH_SHORT).show();
                }
            },2000);


        }
    });
}


private void initView() {
    recyclerView = findViewById(R.id.recy);
}

@Override
public Context context() {
    return null;
}

@Override
public void ShowSuccess(Goods goods) {
    List<Goods.DataBean> list = goods.getData();
    LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
    linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
    recyclerView.setLayoutManager(linearLayoutManager);
    adapter = new MainAdapter(list);
    recyclerView.setAdapter(adapter);

}

@Override
public void ShowError(String error) {

}



}

就这几行代码就搞定了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值