From cbaf06ca3d36e1e1f2129efaa0fd29e1f37e57b8 Mon Sep 17 00:00:00 2001 From: Elena Bobkova Date: Mon, 6 Mar 2017 19:20:01 +0300 Subject: [PATCH] refactored --- .../roboswag/components/views/TypefacedEditText.java | 8 ++++---- .../components/views/internal/AttributesUtils.java | 11 +++++++++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/main/java/ru/touchin/roboswag/components/views/TypefacedEditText.java b/src/main/java/ru/touchin/roboswag/components/views/TypefacedEditText.java index 080613b..ff6f573 100644 --- a/src/main/java/ru/touchin/roboswag/components/views/TypefacedEditText.java +++ b/src/main/java/ru/touchin/roboswag/components/views/TypefacedEditText.java @@ -25,7 +25,6 @@ import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v7.widget.AppCompatEditText; import android.text.Editable; -import android.text.InputType; import android.text.TextUtils; import android.text.TextWatcher; import android.text.method.SingleLineTransformationMethod; @@ -163,7 +162,7 @@ public class TypefacedEditText extends AppCompatEditText { "inputType required parameter"); final int inputType = typedArray.getInt(AttributesUtils.getField(androidRes, "TextView_inputType"), -1); - if (inputType == InputType.TYPE_CLASS_NUMBER || inputType == InputType.TYPE_DATETIME_VARIATION_NORMAL) { + if (AttributesUtils.isNumberInputType(inputType)) { errors.add("use inputType phone instead of number"); } @@ -308,8 +307,9 @@ public class TypefacedEditText extends AppCompatEditText { @Override public void setInputType(final int type) { - if (type == InputType.TYPE_CLASS_NUMBER || type == InputType.TYPE_NUMBER_VARIATION_NORMAL) { - Lc.assertion(new IllegalStateException(AttributesUtils.viewError(this, "Do not specify number InputType for EditText, use phone instead"))); + if (AttributesUtils.isNumberInputType(type)) { + Lc.assertion(new IllegalStateException(AttributesUtils.viewError(this, + "Do not specify number InputType for EditText, use phone instead"))); } super.setInputType(type); } diff --git a/src/main/java/ru/touchin/roboswag/components/views/internal/AttributesUtils.java b/src/main/java/ru/touchin/roboswag/components/views/internal/AttributesUtils.java index a001fc8..e1e8bbe 100644 --- a/src/main/java/ru/touchin/roboswag/components/views/internal/AttributesUtils.java +++ b/src/main/java/ru/touchin/roboswag/components/views/internal/AttributesUtils.java @@ -23,6 +23,7 @@ import android.content.Context; import android.content.res.TypedArray; import android.support.annotation.NonNull; import android.support.annotation.StyleableRes; +import android.text.InputType; import android.text.TextUtils; import android.util.AttributeSet; import android.view.View; @@ -149,6 +150,16 @@ public final class AttributesUtils { return "Errors for view id=" + UiUtils.OfViews.getViewIdString(view) + ":\n" + errorText; } + /** + * Returns true if input type equals number input type. + * + * @param inputType Input type to check; + * @return true if input type equals number input type. + */ + public static boolean isNumberInputType(final int inputType) { + return inputType == InputType.TYPE_CLASS_NUMBER || inputType == InputType.TYPE_DATETIME_VARIATION_NORMAL; + } + private AttributesUtils() { }