2013-07-01 1 views
1

자이로 스코프를 사용하여 패딩 값을 제어하는 ​​앱이 있습니다. 그러나 장치 화면을 터치하거나 이동하지 않으면 UI가 업데이트되지 않습니다.안드로이드 UI가 자이로 스코프 이벤트에서 이상하게 반응합니다.

private void GyroFunction(SensorEvent event) { 
    SensorManager 
      .getRotationMatrixFromVector(mRotationMatrix, event.values); 
    SensorManager.remapCoordinateSystem(mRotationMatrix, 
      SensorManager.AXIS_X, SensorManager.AXIS_Z, mRotationMatrix); 
    SensorManager.getOrientation(mRotationMatrix, orientationVals); 

    // I must put this line of code to make the UI thread update every time 
    tempTxtView.setText(String.valueOf(orientationVals[2])); 

    imgv.setPadding((int) Math.round(orientationVals[0]), 
      (int) Math.round(orientationVals[1]), 
      (int) Math.round(orientationVals[0]), 
      (int) Math.round(orientationVals[1])); 
} 

그러나 자이로 이벤트에 따라 값을 업데이트하는 임시 textView를 추가하면 작동합니다. 그러나 그것이 화면을 차단할 것이라고 생각하지는 않습니다. 다른 해결책이 있습니까?

답변

1

패딩 작업을 설정 한 후 imgv.invalidate()를 호출합니까?

+0

고마워요! 이제 끝내 주네. 우리가 왜 그것을 무효화해야하는지 아십니까? –

+0

아니요 : /하지만 상쾌하게 만들어야 할 것 중 하나라고 생각합니다. – dors