diff --git a/codeinputlib/src/main/java/com/github/glomadrian/codeinputlib/CodeInput.java b/codeinputlib/src/main/java/com/github/glomadrian/codeinputlib/CodeInput.java index 164a42a..5b8f9e9 100644 --- a/codeinputlib/src/main/java/com/github/glomadrian/codeinputlib/CodeInput.java +++ b/codeinputlib/src/main/java/com/github/glomadrian/codeinputlib/CodeInput.java @@ -233,6 +233,7 @@ private void reverseAnimation() { @Override public boolean onKeyDown(int keyCode, KeyEvent keyevent) { if (keyCode == KeyEvent.KEYCODE_DEL && characters.size() != 0) { characters.pop(); + invalidate(); } return super.onKeyDown(keyCode, keyevent); } @@ -246,6 +247,7 @@ private void reverseAnimation() { if (matcher.matches()) { char character = matcher.group(1).charAt(0); characters.push(character); + invalidate(); if (characters.size() >=underlineAmount){ if(listener!=null) { listener.onCodeReady(getCode()); @@ -287,7 +289,6 @@ private void reverseAnimation() { if (hintText != null) { drawHint(canvas); } - invalidate(); } private void drawSection(int position, float fromX, float fromY, float toX, float toY, @@ -320,8 +321,8 @@ public Character[] getCode() { private class ReductionAnimatorListener implements ValueAnimator.AnimatorUpdateListener { public void onAnimationUpdate(ValueAnimator valueanimator) { - float value = ((Float) valueanimator.getAnimatedValue()).floatValue(); - reduction = value; + reduction = (float) valueanimator.getAnimatedValue(); + invalidate(); } } @@ -332,6 +333,7 @@ private class HintYAnimatorListener implements ValueAnimator.AnimatorUpdateListe @Override public void onAnimationUpdate(ValueAnimator animation) { hintActualMarginBottom = (float) animation.getAnimatedValue(); + invalidate(); } } @@ -343,6 +345,7 @@ private class HintSizeAnimatorListener implements ValueAnimator.AnimatorUpdateLi @Override public void onAnimationUpdate(ValueAnimator animation) { float size = (float) animation.getAnimatedValue(); hintPaint.setTextSize(size); + invalidate(); } } }