第二阶段个人冲刺记录05
今天:继续完成了新闻列表的展示
明天:继续下一个功能,点击列表显示新闻详情
在adapter下新建一个TrashNewsAdapter类,里面的代码如下:
/** * 垃圾分类新闻列表适配器 */ public class TrashNewsAdapter extends BaseQuickAdapter<TrashNewsResponse.NewslistBean, BaseViewHolder> { public TrashNewsAdapter(int layoutResId, @Nullable List<TrashNewsResponse.NewslistBean> data) { super(layoutResId, data); } @Override protected void convert(BaseViewHolder helper, TrashNewsResponse.NewslistBean item) { helper.setText(R.id.tv_title, item.getTitle()) .setText(R.id.tv_description, item.getDescription()) .addOnClickListener(R.id.item_trash_news); } }
新建一个initView方法
/** * 页面初始化 */ private void initView() { banner = findViewById(R.id.banner); collapsingToolbarLayout = findViewById(R.id.toolbar_layout); appBarLayout = findViewById(R.id.appbar_layout); rvNews = findViewById(R.id.rv_news); //伸缩偏移量监听 appBarLayout.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() { boolean isShow = true; int scrollRange = -1; @Override public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) { if (scrollRange == -1) { scrollRange = appBarLayout.getTotalScrollRange(); } if (scrollRange + verticalOffset == 0) {//收缩时 collapsingToolbarLayout.setTitle("垃圾分类"); isShow = true; } else if (isShow) {//展开时 collapsingToolbarLayout.setTitle(""); isShow = false; } } }); //设置列表 mAdapter = new TrashNewsAdapter(R.layout.item_trash_new_rv, mList); mAdapter.setOnItemChildClickListener((adapter, view, position) -> { showMsg("点击了第" + position + "个"); }); rvNews.setLayoutManager(new LinearLayoutManager(context)); rvNews.setAdapter(mAdapter); //请求垃圾分类新闻数据 mPresenter.getTrashNews(10); }
再写一个显示列表数据的方法
/** * 显示新闻列表 * * @param list */ private void showList(List<TrashNewsResponse.NewslistBean> list) { mList.clear(); mList.addAll(list); mAdapter.notifyDataSetChanged(); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!