使用AsyNcTask为RecyclerView添加数据

2016-08-07  本文已影响0人  木木木丢了

本人不会写文章,直接看

RecyclerView 是最新控件,需要依赖库文件,在build.gradle中引入以下文件

compile'com.android.support:recyclerview-v7:24.1.1'

后面的24什么的根据自己的版本修改

下面是我的布局

main_activity.xml layout_item.xml

这是慕课网的一个接口http://www.imooc.com/api/teacher?type=4&num=30

我只用到了图片和title,所以只写了这两个用于展示

首先新建一个NewsInfo类,把需要用到的属性写出来(不需要set和get方法,构造方法等)

NwsInfo.java

然后我们需要一个适配器需要继承与RecyclerView.Adapter

我们需要需要实现的方法给他实现了

RecyclerAdapter.java

下面就是在MainActivity中进行操作了

首先我们绑定数据

RecyclerView mRecycleView= (RecyclerView) findViewById(R.id.listview);

我们需要一什么样的视图展示出来,官方给出了好几种试图,我是列表的形式展示(后面会把展示的形式写出来,这里就不哆嗦了)

mRecycleView.setLayoutManager(newLinearLayoutManager(this));

下面我们就需要异步操作了

首先别忘记把上网的权限加进去,以防万一,把读写的也加进去

首先新建一个内部类继承自AsyncTask<Params, Progress, Result>

第一个参数Params:启动任务执行的输入参数

第二个参数Progress:后台任务执行的进度

第一个参数Result后台计算结果的类型

需要实现doInBackground这个方法,我们可以在这个方法里面写请求数据的操作

这个是json解析的

然后我们把onPostExecute方法实现了

在里面吧适配器写入到里面,把数据加载进去,然后再刷新就可以了

我们在Oncreate的方法里面跳用异步

newMAinAsynctask().execute(URL);

这样就可以了,看看数据加载进去没有,还有图片展示的我也贴出来就是ImageLoader

上一篇下一篇

猜你喜欢

热点阅读