自定义View实现天气折线图效果

Posted qy274770068

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义View实现天气折线图效果相关的知识,希望对你有一定的参考价值。

本次博客主要介绍一个天气效果的实现过程

最近公司的项目加入天气模块,需要实现下面的效果:
设计图
然后根据自己的构想实现了下面的效果:
实现的效果图
下面会详细的介绍实现的过程。

1.构想思路

其实在拿到设计的一个效果,我们首先要做的就是去思考,怎么实现,就算不好实现,也要实现一个折中的两边都可以妥协的方案。

由于当前是要展示10天以上的天气的情况,那么如果采用一个view绘制的形式肯定会影响到性能,那其实很快就想到了ListView,这不就是一个横向的ListView的效果么,考虑到ListView并没有横向的效果,转而就想到了RecyclerView,RecyclerView的LinearLayoutManager可以直接设置为横向的,这解决了使用什么来实现的问题。

1.1最高温度和最低温度在View上面怎么绘制

这个问题不是太难,可以这样,拿到这15天的最低温度和最高温度,这个需要我们计算,从这15个最高以及最低温度里面找到最大以及最小的,然后使用这两个温度差去映射View的高度,最后可以得到需要的绘制的圆点View的Y轴的计算公式:

View=(15)View1515

以上是关于自定义View实现天气折线图效果的主要内容,如果未能解决你的问题,请参考以下文章

Android自定义View - 仿支付宝月账单折线图

自定义View——折线图

自定义View——折线图

自定义View-条形图

自定义View-条形图

Android之自定义控件实现天气温度折线图和饼状图