当前位置: 首页 > news >正文

android睡眠分期图

 一、效果图

       做医疗类项目,经常会遇到做各种图表,本文做的睡眠分期图。

二、代码

    

引入用到的库

    api 'joda-time:joda-time:2.10.1'

调用代码

/*** 睡眠* 分期*/private SleepChartAdapter mAdapter;private SleepChartAttrs mAttrs;private List<SleepItemEntry> mDataList = new ArrayList<>();;private LocalDate mLocalDate;private SpeedRatioLayoutManager mLayoutManager;private SleepChartItemDecoration mItemDecoration;private void sleepChartData() {// 清空数据mDataList.clear();// 数据数据mLocalDate = LocalDate.now();
//        List<SleepItemEntry> entryList = SleepTestData.createSleepEntry(sleepResult);List<SleepItemEntry> entryList = SleepTestData.createSleepEntry(mLocalDate);Logger.LogD("huhuhuhuhuhuh", new Gson().toJson(entryList));mDataList.addAll(entryList);// mDataBinding.chartSleep.recycler// 适配器mAttrs = mDataBinding.chartSleep.recycler.mAttrs;mLayoutManager = new SpeedRatioLayoutManager(getActivity(), mAttrs);mAdapter = new SleepChartAdapter(getActivity(), mDataList, mDataBinding.chartSleep.recycler);//设置列表相关属性mItemDecoration = new SleepChartItemDecoration(mAttrs);mDataBinding.chartSleep.recycler.setAdapter(mAdapter);mDataBinding.chartSleep.recycler.setLayoutManager(mLayoutManager);mDataBinding.chartSleep.recycler.addItemDecoration(mItemDecoration);setListener();}/*** 睡眠分期* 列表监听*/RecyclerItemGestureListener mItemGestureListener;protected void setListener() {mItemGestureListener = new RecyclerItemGestureListener(getActivity(), mDataBinding.chartSleep.recycler,new SimpleItemGestureListener() {@Overridepublic void onItemClick(View view, int position) {}@Overridepublic void onLongItemClick(View view, int position) {}@Overridepublic void onScrollStateChanged(RecyclerView recyclerView, int newState) {}@Overridepublic void onScrolled(RecyclerView recyclerView, int dx, int dy) {}});mDataBinding.chartSleep.recycler.addOnItemTouchListener(mItemGestureListener);}

布局

        <!-- 睡眠分期图 --><csu.xiaoya.robotApp.ui.activity.homepage.healthy_monitor.sleepreport.sleepchart.SleepChartRecyclerViewandroid:id="@+id/recycler"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_marginTop="-12dp"android:paddingLeft="@dimen/dp_2"android:paddingTop="0dp"android:paddingEnd="0dp"android:paddingRight="@dimen/dp_2"app:contentPaddingBottom="6dp"app:contentPaddingTop="0dp"app:txtColor="@color/white" />

全部代码

https://download.csdn.net/download/shi450561200/89393094

http://www.lryc.cn/news/361485.html

相关文章:

  • 2023年信息素养大赛小学组C++智能算法复赛真题
  • 独立游戏开发的 6 个步骤
  • Stable Diffusion AI绘画:从创意词汇到艺术图画的魔法之旅
  • 使用C++实现高效的套接字连接池
  • 个人百度百科怎么创建
  • Nvidia Jetson/Orin +FPGA+AI大算力边缘计算盒子:潍柴雷沃智慧农业无人驾驶
  • ICPC训练赛补题集
  • The First项目报告:解读去中心化衍生品交易所AVEO
  • Docker 快速更改容器的重启策略(Restart Policies)以及重启策略详解
  • docker 启动关闭,设置仓库地址
  • 二叉树的链式结构实现
  • MySQL远程连接
  • 奔驰大G升级电动踏板效果
  • 【xilinx】vivado中的xpm_cdc_gray.tcl的用途
  • windows中安装zookeeper
  • 直接写和放在函数中不同的R语言用法
  • 《mysql轻松学习·二》
  • Swift对比版本号
  • MySQL数据表的“增删查改“
  • Github查询语法
  • pqgrid的使用
  • 媳妇面试了一家公司,期望月薪20K,对方没多问就答应了,只要求3天内到岗,可我总觉得哪里不对劲。
  • 【Makefile笔记】小白入门篇
  • 快速入门文件操作+5种例子演示
  • 基于Vue3的Uniapp实训项目|一家鲜花店
  • Python3 字典
  • JPA详解
  • Linux线程:线程分离
  • chatgpt之api的调用问题
  • Java中lambda表达式是啥怎么使用