android天气预报应用开发(三)---- 趋势图界面绘制

几乎所有的天气软件都会有着华丽丽的温度趋势图界面,通过折线图预报未来几天的天气温度走势。原本思路是通过开源项目AchartEngine来绘制,只是绘制的界面差别相当大。AchartEngine适合数据统计。无奈在网上搜到一个自定义实现折线图界面的demo,原理也简单,就重新来实现了下。(可惜源作者的demo链接已找不到了--,)

效果图:

(图片中缺少一段折线是因为实时的天气是因为天气预报网址获取的数据问题)


自定义实现折线图的思路如下:自定义TrendView继承View,在onDraw函数中根据给定值绘制相关图片文字资源。

直接上代码:

	@Override
	protected void onDraw(Canvas canvas) {
		super.onDraw(canvas);
		//自定义温度偏移量倍数为8,可根据屏幕分辨率设定
		int multiple = 8;
		
		// 计算文字高度  
		FontMetrics fontMetrics = mTextPaint.getFontMetrics();  
		float fontHeight = fontMetrics.bottom - fontMetrics.top;  
		
		//从屏幕中间位置作为0℃点
		int h = this.height/2;
		
		//最高温度折线的图片,文字高度
		int topTextH = (int) (h - fontHeight/2);
		int topPicH = (int) (h - fo
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值