Android中如何利用RecyclerView实现数据列表展示效果
发表于:2025-02-14 作者:千家信息网编辑
千家信息网最后更新 2025年02月14日,今天小编给大家分享一下Android中如何利用RecyclerView实现数据列表展示效果的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家
千家信息网最后更新 2025年02月14日Android中如何利用RecyclerView实现数据列表展示效果
今天小编给大家分享一下Android中如何利用RecyclerView实现数据列表展示效果的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
1.首先导入依赖:
compile 'com.android.support:recyclerview-v7:25.3.1'
2.适配器类:
public class NewsAdapter extends RecyclerView.Adapter { private View view; private Context mcontext; private ArrayListmlist=new ArrayList<>(); public NewsAdapter(Context mcontext) { this.mcontext = mcontext; } //找到需要导入的布局 @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { view = LayoutInflater.from(mcontext).inflate(R.layout.news_item, null); return new ViewHolder(view); } //加载相应的内容 @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { ViewHolder viewholder=(ViewHolder)holder; viewholder.textview.setText(""+getItem(position).getNews_title()); Glide.with(mcontext).load(getItem(position).getPic_url()).into(viewholder.ima); } //手写的重置数据的方法 public void setdata(ArrayList list){ if (list!=null&&list.size()>0){ mlist.addAll(list); } } //手写的获得视图的方法 public NewsData.DataBean getItem(int position){ return mlist.get(position); }; @Override public int getItemCount() { return mlist.size(); } //定义的ViewHolder类继承RecyclerView.ViewHolder 并找到布局中的ID public class ViewHolder extends RecyclerView.ViewHolder{ private TextView textview; private ImageView ima; public ViewHolder(View itemView) { super(itemView); textview=(TextView)itemView.findViewById(R.id.tv); ima=(ImageView)itemView.findViewById(R.id.image); } }}
3.主界面(用到RecyclerView的主要是initdata()方法和Handler):
public class MainActivity extends AppCompatActivity implements IMainView{ private MainPresenter mainp; private NewsAdapter md; private RecyclerView recy; private ArrayListmlist=new ArrayList<>(); private String url="http://api.expoon.com/AppNews/getNewsList/type/1/p/1"; private Handler hand=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); Gson gson=new Gson(); if (msg.what==1) { NewsData newsData = gson.fromJson(msg.obj.toString(), NewsData.class); mlist=(ArrayList ) newsData.getData(); md.setdata((ArrayList ) mlist); md.notifyDataSetChanged(); } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initview(); initdata(); initdatafromserver(); } private void initview() { recy=(RecyclerView)findViewById(R.id.recy); } private void initdatafromserver() { //加载网络数据,找P层去要 mainp.loadDataFromServer(url); } private void initdata() { mainp=new MainPresenter(this); //设置适配器 md=new NewsAdapter(this); //创建默认的线性LayoutManager recy.setLayoutManager(new LinearLayoutManager(this)); recy.setAdapter(md); } //重写的IMainView类接口的两个方法 @Override public void successfulCallback(String str) { Message msg = Message.obtain(); msg.what=1; msg.obj=str; hand.sendMessage(msg); } @Override public void errCallback(int code, String msg) { }}
以上就是"Android中如何利用RecyclerView实现数据列表展示效果"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
数据
方法
知识
篇文章
内容
效果
布局
适配器
适配
不同
很大
两个
大部分
就是
接口
更多
界面
知识点
线性
网络
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器上的安全数据库没没有
网络安全红蚁级别
游戏显示服务器不可用
snmp管理服务器
我国网络安全领导小组
尝试在数据库448页
软件开发的矩阵型组织结构
软件开发属于技术服务嘛
关于网络安全的口诀
刀箱服务器配置
如何无缝切换服务器
首届安全网络安全周是哪一个年
5月25日网络安全日
可视化服务器管理
在线学习软件开发软件定制
玉衡服务器
服务器资料备份
我的世界柠檬服务器
谷歌注册账号服务器通信出现问题
安徽诚益互联网众包科技
地区列表数据库
江苏三加三网络技术有限公司
连其他主机数据库
手机上传文件到服务器
web页面访问数据库中数据
北京市网络安全研究所
朝阳区网络软件开发
北京羿龙网络技术
vc 使用数据库
谷歌注册账号服务器通信出现问题