Handler handler = new Handler();
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
myTextView = (TextView)findViewById(R.id.myTextView);
lastUpdate = new Date(System.currentTimeMillis());
sensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
sensorManager.registerListener(sensorListener, SensorManager.SENSOR_ACCELEROMETER, SensorManager.SENSOR_DELAY_FASTEST);
Timer updateTimer = new Timer("velocityUpdate");
updateTimer.scheduleAtFixedRate(new TimerTask() {
public void run() {
updateGUI();
}
}, 0, 1000);
}
private void updateGUI() {
final double mph = (Math.round(100*velocity / 1.6 * 3.6))/100;
handler.post(new Runnable() {
public void run() {
myTextView.setText(String.valueOf(mph) + "mph");
}
});
}
참고로 가속도는 앞-뒤, 좌-우, 위-아래 세 방향 축을 따라 측정할 수 있는데, 센서 관리자에서는 장치가 평평한 표면 위에서 세로 방향으로 위쪽을 바라보고 있을 때를 정지상태로 간주하게 됩니다.
'IT > 안드로이드' 카테고리의 다른 글
모토로라 XOOM ICS 업데이트 시작!!! (0) | 2012.01.19 |
---|---|
구글이 안드로이드로 하루에 100억 번다고 오라클 주장!! (0) | 2012.01.19 |
애니메이션의 타입 중 회전 애니메이션과 알파 애니메이션을 구현하는 코드는? (0) | 2012.01.16 |
트윈드 애니메이션이 주로 사용되는 곳과 Animation클래스를 이용해 만들어지는 트윈드 애니메이션의 애니메이션 타입 4가지는? (0) | 2012.01.16 |
위치 매니저를 이용하기 위해 LBS 하드웨어 접근 지원을 위한 두 가지 접근권한 방법은? (0) | 2012.01.16 |