用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - android代码库

Android 指南针传感器

2013-02-13 作者: 小蜜锋举报

[android]代码库

public void onSensorChanged(int sensor, float[] values) {
    synchronized (this) {
        if (sensor == SensorManager.SENSOR_ORIENTATION) {
            Log.d(TAG, "onSensorChanged: " + sensor + ", x: " + values[0]
                    + ", y: " + values[1] + ", z: " + values[2]);
 
            // OrientText.setText("--- NESW ---");
            if (Math.abs(values[0] - DegressQuondam) < 1)
                return;
 
            switch ((int) values[0]) {
            case 0: // North 北
                OrientText.setText("正北");
                break;
            case 90: // East 东
                OrientText.setText("正东");
                break;
            case 180: // South 南
                OrientText.setText("正南");
                break;
            case 270: // West 西
                OrientText.setText("正西");
                break;
            default: {
                int v = (int) values[0];
                if (v > 0 && v < 90) {
                    OrientText.setText("北偏东" + v);
                }
 
                if (v > 90 && v < 180) {
                    v = 180 - v;
                    OrientText.setText("南偏东" + v);
                }
 
                if (v > 180 && v < 270) {
                    v = v - 180;
                    OrientText.setText("南偏西" + v);
                }
                if (v > 270 && v < 360) {
                    v = 360 - v;
                    OrientText.setText("北偏西" + v);
                }
            }
            }
 
            ((TextView) findViewById(R.id.OrientValue)).setText(String
                    .valueOf(values[0]));
 
            if (DegressQuondam != -values[0])
                AniRotateImage(-values[0]);
        }
 
        // if (sensor == SensorManager.SENSOR_ACCELEROMETER) { // //}
 
    }
}
 
public void onAccuracyChanged(int sensor, int accuracy) {
    Log.d(TAG, "onAccuracyChanged: " + sensor + ", accuracy: " + accuracy);
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...