速断进度条动画时长,避免数据与进度条不一致问题,小于1的度数按照0°显示
This commit is contained in:
@@ -78,11 +78,11 @@ public class SteeringWheelView extends ConstraintLayout {
|
||||
steeringCircularV = findViewById(R.id.steering_circular);
|
||||
steeringCircularV.setBackWidth(8);
|
||||
steeringCircularV.setBackColor(R.color.hmi_light_back_bg);
|
||||
steeringCircularV.setProgress((int) (270 * 100) / 360, 2000);
|
||||
steeringCircularV.setProgress((int) (270 * 100) / 360, 20);
|
||||
steeringCircularV.setProgColor(R.color.hmi_light_blue, R.color.hmi_dark_blue);
|
||||
if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
|
||||
steeringCircularVAlpha = findViewById(R.id.steering_circular_alpha);
|
||||
steeringCircularVAlpha.setProgress((int) (270 * 100) / 360, 2000);
|
||||
steeringCircularVAlpha.setProgress((int) (270 * 100) / 360, 20);
|
||||
steeringCircularV.setProgColor(R.color.hmi_dark_blue, R.color.hmi_light_blue);
|
||||
steeringCircularVAlpha.setBackWidth(8);
|
||||
steeringCircularVAlpha.setBackColor(R.color.hmi_clear_00);
|
||||
@@ -177,27 +177,31 @@ public class SteeringWheelView extends ConstraintLayout {
|
||||
*/
|
||||
@Override
|
||||
public void onAutopilotSteeringData(float steering) {
|
||||
if (steering < 1) {
|
||||
steering = 0;
|
||||
}
|
||||
float steeringValue = steering;
|
||||
ThreadUtils.runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
Log.d(TAG, "steering====" + String.valueOf(steering));
|
||||
if (steeringTVL != null && steering > 0) {
|
||||
Log.d(TAG, "steering====" + String.valueOf(steeringValue));
|
||||
if (steeringTVL != null && steeringValue > 0) {
|
||||
steeringTVR.setVisibility(View.INVISIBLE);
|
||||
steeringTVL.setVisibility(View.VISIBLE);
|
||||
steeringTVL.setText(String.valueOf((int) steering) + "°");
|
||||
} else if (steeringTVR != null && steering <= 0) {
|
||||
steeringTVL.setText(String.valueOf((int) steeringValue) + "°");
|
||||
} else if (steeringTVR != null && steeringValue <= 0) {
|
||||
steeringTVL.setVisibility(View.INVISIBLE);
|
||||
steeringTVR.setVisibility(View.VISIBLE);
|
||||
steeringTVR.setText(String.valueOf((int) -steering) + "°");
|
||||
steeringTVR.setText(String.valueOf((int) -steeringValue) + "°");
|
||||
} else {
|
||||
Log.d(TAG, "onAutopilotSteeringData error");
|
||||
}
|
||||
animationWithSteeringData(-steering);
|
||||
animationWithSteeringData(-steeringValue);
|
||||
if (steeringCircularV != null) {
|
||||
steeringCircularV.setProgress((int) (-steering * 100) / 360, 1000);
|
||||
steeringCircularV.setProgress((int) (-steeringValue * 100) / 360, 20);
|
||||
}
|
||||
if (steeringCircularVAlpha != null) {
|
||||
steeringCircularVAlpha.setProgress((int) (-steering * 100) / 360, 1000);
|
||||
steeringCircularVAlpha.setProgress((int) (-steeringValue * 100) / 360, 20);
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -245,7 +249,7 @@ public class SteeringWheelView extends ConstraintLayout {
|
||||
rotateAnimation = new RotateAnimation(fromDegrees, steering,
|
||||
RotateAnimation.RELATIVE_TO_SELF, 0.5f,
|
||||
RotateAnimation.RELATIVE_TO_SELF, 0.5f);
|
||||
rotateAnimation.setDuration(1000);//旋转时长
|
||||
rotateAnimation.setDuration(20);//旋转时长
|
||||
rotateAnimation.setFillAfter(true);//旋转后保持原状
|
||||
autopilotIV.clearAnimation();
|
||||
autopilotIV.startAnimation(rotateAnimation);
|
||||
|
||||
Reference in New Issue
Block a user