diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/maskedittext/GmeMaskedEditText.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/maskedittext/GmeMaskedEditText.java index 4a596ef8..9989beff 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/maskedittext/GmeMaskedEditText.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/customwidgets/maskedittext/GmeMaskedEditText.java @@ -2,6 +2,7 @@ package com.gmeremit.online.gmeremittance_native.customwidgets.maskedittext; import android.content.Context; import android.content.res.TypedArray; +import android.text.InputType; import android.util.AttributeSet; import android.util.TypedValue; @@ -13,7 +14,7 @@ public class GmeMaskedEditText extends GmeEditText { private MaskedTextWatcher maskedTextWatcher; private int maskingType = 0; private String prefixText = ""; - private boolean isAlphaNumeric=true; + private boolean isAlphaNumeric = true; public GmeMaskedEditText(Context context) { super(context); @@ -30,30 +31,43 @@ public class GmeMaskedEditText extends GmeEditText { init(context, attrs); } - public void setMaskingType(int value) - { + /** + * 0 For passport + * 1 For alien/national registration card + * + * @param value + */ + public void setMaskingType(int value) { + maskingType = value; + setupMasking(); } private void init(Context context, AttributeSet attributeSet) { - isAlphaNumeric=false; + isAlphaNumeric = false; TypedArray ta = context.obtainStyledAttributes(attributeSet, R.styleable.GMEMaskedEditText, 0, 0); try { TypedValue outValue = new TypedValue(); boolean result = ta.getValue(R.styleable.GMEMaskedEditText_textType, outValue); - if (!result) - maskingType = 0; - else + if (result) { maskingType = outValue.data; - prefixText = ta.getString(R.styleable.GMEMaskedEditText_prefixText); - if (prefixText == null) - prefixText = ""; + prefixText = ta.getString(R.styleable.GMEMaskedEditText_prefixText); + if (prefixText == null) + prefixText = ""; + setupMasking(); + + } } catch (Exception e) { } finally { ta.recycle(); } + + + } + + private void setupMasking() { String phoneMask = ""; switch (maskingType) { case 1: @@ -62,12 +76,24 @@ public class GmeMaskedEditText extends GmeEditText { phoneMask = "-######-#######"; else phoneMask = "######-#######"; + isAlphaNumeric = false; + setInputType(InputType.TYPE_CLASS_PHONE); + if (maskedTextWatcher != null) + removeTextChangedListener(maskedTextWatcher); + maskedTextWatcher = new MaskedTextWatcher(phoneMask, prefixText, "#", this, isAlphaNumeric); + addTextChangedListener(maskedTextWatcher); + break; + + case 0: + isAlphaNumeric = true; + setInputType(InputType.TYPE_CLASS_TEXT); + if (maskedTextWatcher != null) + removeTextChangedListener(maskedTextWatcher); + maskedTextWatcher=null; break; } - maskedTextWatcher = new MaskedTextWatcher(phoneMask, prefixText, "#", this,isAlphaNumeric); - addTextChangedListener(maskedTextWatcher); } diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view2/KYCView2Fragment.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view2/KYCView2Fragment.java index 882140f1..f3bf3ca1 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view2/KYCView2Fragment.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view2/KYCView2Fragment.java @@ -13,6 +13,8 @@ import android.widget.EditText; import com.gmeremit.online.gmeremittance_native.R; import com.gmeremit.online.gmeremittance_native.base.BaseFragment; +import com.gmeremit.online.gmeremittance_native.customwidgets.GmeEditText; +import com.gmeremit.online.gmeremittance_native.customwidgets.maskedittext.GmeMaskedEditText; import com.gmeremit.online.gmeremittance_native.kycV2.KYCV2ActionListener; import com.gmeremit.online.gmeremittance_native.kycV2.model.Bank; import com.gmeremit.online.gmeremittance_native.kycV2.model.IdType; @@ -40,7 +42,7 @@ public class KYCView2Fragment extends BaseFragment implements View.OnClickListen @BindView(R.id.ed_verificationType) EditText ed_verificationType; @BindView(R.id.ed_verificationId) - EditText ed_verificationId; + GmeMaskedEditText ed_verificationId; @BindView(R.id.ed_expiryDate) EditText ed_expiryDate; @BindView(R.id.ed_issueDate) @@ -200,6 +202,12 @@ public class KYCView2Fragment extends BaseFragment implements View.OnClickListen selectedIdType = sT; setErrorOnVerificationType(null); resetVerificationRelatedDataIfRequired(); + + if(sT.getText().equalsIgnoreCase("passport")) + ed_verificationId.setMaskingType(0); + else + ed_verificationId.setMaskingType(1); + List listOfViewsToBeHide = new ArrayList<>(idTypeRelatedViews); for (String idRelatedView : selectedIdType.getDependent()) { diff --git a/app/src/main/res/layout/fragment_kyc_view2_v2.xml b/app/src/main/res/layout/fragment_kyc_view2_v2.xml index ee60111d..167c75d5 100644 --- a/app/src/main/res/layout/fragment_kyc_view2_v2.xml +++ b/app/src/main/res/layout/fragment_kyc_view2_v2.xml @@ -118,7 +118,6 @@ style="@style/editetxtsingleline" android:layout_width="match_parent" android:imeOptions="actionDone" - app:textType="alien" android:layout_height="wrap_content" />