网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Android利用Sensor(传感器)实现水平仪功能-创新互联

这里介绍的水平仪,指的是比较传统的气泡水平仪,在一个透明圆盘内充满液体,液体中留有一个气泡,当一端翘起时,该气泡就会浮向翘起的一端。

创新互联专注于南充企业网站建设,响应式网站建设,商城系统网站开发。南充网站建设公司,为南充等地区提供建站服务。全流程定制网站制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

利用方向传感器返回的第一个参数,实现了一个指南针小应用。


我的Android进阶之旅------>Android利用Sensor(传感器)实现指南针功能


接下来,我们利用返回的第二、三个参数实现该水平仪。因为第二个参数,反映底部翘起的角度(当顶部翘起时为负值),第三个参数可以反映右侧翘起的角度(当左侧翘起时为负值)。根据这两个角度就可以开发水平仪,实现手机哪端翘起,气泡就浮向哪端,这也是水平仪的实现思想。本实例来自于《疯狂Android讲义》


先来看下运行效果:

Android利用Sensor(传感器)实现水平仪功能Android利用Sensor(传感器)实现水平仪功能Android利用Sensor(传感器)实现水平仪功能Android利用Sensor(传感器)实现水平仪功能

该程序自定义了一个View,用来绘制透明圆盘和气泡,其中气泡的位置会动态改变。自定义View代码如下:

MyView.java


package org.crazyit.sensor; 
 
import android.content.Context; 
import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.graphics.Canvas; 
import android.util.AttributeSet; 
import android.view.View; 
 
public class MyView extends View { 
 // 定义水平仪仪表盘图片 
 Bitmap back; 
 // 定义水平仪中的气泡图标 
 Bitmap bubble; 
 // 定义水平仪中气泡 的X、Y座标 
 int bubbleX, bubbleY; 
 
 public MyView(Context context, AttributeSet attrs) { 
 super(context, attrs); 
 // 加载水平仪图片和气泡图片 
 back = BitmapFactory.decodeResource(getResources(), R.drawable.back); 
 bubble = BitmapFactory 
 .decodeResource(getResources(), R.drawable.bubble); 
 } 
 
 @Override 
 protected void onDraw(Canvas canvas) { 
 super.onDraw(canvas); 
 // 绘制水平仪表盘图片 
 canvas.drawBitmap(back, 0, 0, null); 
 // 根据气泡座标绘制气泡 
 canvas.drawBitmap(bubble, bubbleX, bubbleY, null); 
 } 
} 

本文标题:Android利用Sensor(传感器)实现水平仪功能-创新互联
本文链接:http://bjjierui.cn/article/jijoi.html

其他资讯