#趣米杯#码农天气--码农自己的天气APP(三)
来源:互联网 发布:windows排名 编辑:程序博客网 时间:2024/06/06 19:30
本帖最后由 jnhoodlum 于 2014-1-6 17:31 编辑本文参与趣米杯征文活动,如需转载请注明出处和作者#趣米杯#码农天气--码农自己的天气APP(一)#趣米杯#码农天气--码农自己的天气APP(二)这一篇文章我主要介绍一下彩虹天气的那个趋势界面的写法,大家先对比一下彩虹天气的趋势和我自己画出来的趋势: 我反解了彩虹天气的apk文件,发现他是用的AChartEngine 我上网搜了一下,这个项目好像只提供jar包供第三方开发,源码是不公布的。我们平时看电影会说一句话:没有声音,再好的戏也出不来,这话放到我们码农界我觉得也很合适:没有源码,再好的封装用着也不放心。(有同感的要顶一下啊)本着这个原则,我后来在github上找到了一个用来画图标的开源项目:https://github.com/Androguide/HoloGraphLibrary,这个图表的库虽然实现的功能不是特别多,但是基本的折线图,饼状图和块状图都实现了:折线图 块状图 饼状图 使用这些基本的图形来画柱状图什么的其实是很方便的,自己对饼状图做个处理就可以了,这块我下次可以再单独开个帖子说说,这个我们主要用的是折线图。这个类库的折线图只支持定义折线的颜色,不支持在折线的端点上方写文字(我们的这个app要写的是温度),不过这个其实很好办,因为我们有源码!打开HoloGraphLibrary这个library project,然后直接修改LineGraph.java这个类的onDraw方法,在最后添加下面一句话,我们就可以把温度显示出来了: paint.setColor(line.getColor()); paint.setTextSize(20); canvas.drawText((int)p.getY()+"℃", xPixels-18, yPixels-10, paint);复制代码其他还有一些修改折线颜色的代码我就不贴了,大家可以自己随便改个颜色试试。我们调用的时候也很方便, Line l1 = new Line(); LinePoint p1 = new LinePoint(); // 高温曲线 p1.setX(1); // p1点的x坐标 p1.setY(high = Math.max(Math.max(Math.max(Integer.valueOf(tempArray[0]), Integer.valueOf(tempArray[1])), Integer.valueOf(tempArray[1])), Integer.valueOf(tempArray[1]))); // p1点的y坐标 l1.addPoint(p1); // 将p1点加入到Line复制代码添加完要画的折线的点以后,我们只需要调用下述方法即可 LineGraph li1 = (LineGraph) forcastView.findViewById(R.id.linegraph1); li1.addLine(l1); // li1.setRangeY(low-5, high+3); // 设置LineGraph 的上下距离复制代码至此,码农天气的趋势页面就画好了:下一篇文章我会说一下彩虹天气的通知栏以及桌面widget,尽请期待!
0 0
- #趣米杯#码农天气--码农自己的天气APP(三)
- #趣米杯#码农天气--码农自己的天气APP(一)
- #趣米杯#码农天气--码农自己的天气APP(二)
- #趣米杯#码农天气--码农自己的天气APP(四)
- #趣米杯#码农天气--码农自己的天气APP(五)
- 码农天气--码农自己的天气APP(一)
- "晴天"天气app的开源库逐步学习(三)
- 天气APP的实战(1)
- 新人自己开发的天气app,有兴趣的可以交流
- 天气类APP产品微体验(墨迹天气、中央天气预报、雅虎天气、2345天气王)
- 基于Android的天气APP
- 自己的网页加载天气
- Android 端天气预报APP的实现(三)JSON解析天气数据
- 【酷我天气】完整的天气App项目
- Android口袋天气系列三-->天气数据的获取
- 天气
- 天气
- 天气
- [linux基础]linux的权限知识
- oracle数据类型
- 反射望远镜的发展历程(3)
- ZJU_BASICLEVEL_1012
- ORACLE分页查询语句_rownum
- #趣米杯#码农天气--码农自己的天气APP(三)
- python open 文件操作
- 再次区分xcode add文件的三种方式
- 腾讯大规模Hadoop集群实践
- 数据库编程总结
- WinForm中如何实现判断某些控件是否可用
- 换晶振导致stm32串口数据飞码的解决办法
- 反射望远镜的发展历程(4)
- 派生类的构造函数的初始化列表问题