public class CardCredentialsViewHolder extends PaymentOptionsBaseViewHolder<CardCredentialsViewModelData,CardCredentialsViewHolder,CardCredentialsViewModel>
Modifier and Type | Class and Description |
---|---|
(package private) class |
CardCredentialsViewHolder.CardCredentialsTextWatcher
The type Card credentials text watcher.
|
static interface |
CardCredentialsViewHolder.Data
The interface Data.
|
private static class |
CardCredentialsViewHolder.TrackingSpan |
PaymentOptionsBaseViewHolder.ViewHolderType
Modifier and Type | Field and Description |
---|---|
private android.widget.EditText |
addressOnCardField |
private android.support.design.widget.TextInputLayout |
addressOnCardLayout |
private static int |
BIN_NUMBER_LENGTH |
private CardCredentialsViewHolder.CardCredentialsTextWatcher |
cardCredentialsTextWatcher |
private android.widget.EditText |
cardNumberField |
private android.support.design.widget.TextInputLayout |
cardNumberFieldTextInputLayout |
private android.widget.ImageButton |
cardScannerButton |
private android.support.v7.widget.RecyclerView |
cardSystemsRecyclerView |
private CvvEditText |
cvvField |
private android.support.design.widget.TextInputLayout |
cvvFieldTextInputLayout |
private ExpirationDateEditText |
expirationDateField |
private android.support.design.widget.TextInputLayout |
expirationDateFieldTextInputLayout |
private android.support.v7.widget.LinearLayoutManager |
linearLayoutManager |
private static int |
NAME_ON_CARD_MAX_LENGTH |
private android.widget.EditText |
nameOnCardField |
private android.support.design.widget.TextInputLayout |
nameOnCardFieldTextInputLayout |
private android.widget.TextView |
saveCardDescriptionTextView |
private android.support.constraint.ConstraintLayout |
saveCardLayout |
private android.widget.Switch |
saveCardSwitch |
private CardCredentialsViewModel |
viewModel |
Constructor and Description |
---|
CardCredentialsViewHolder(android.view.View view)
Instantiates a new Card credentials view holder.
|
Modifier and Type | Method and Description |
---|---|
void |
bind(CardCredentialsViewModelData data)
Bind.
|
private void |
configureSaveCardSwitch() |
private android.widget.EditText |
getAddressOnCardField() |
private java.util.ArrayList<PaymentOption> |
getPaymentOption() |
private void |
initCardSystemsRecyclerView(java.util.ArrayList<PaymentOption> paymentOptions) |
void |
restoreState(android.os.Parcelable state)
Restore state.
|
android.os.Parcelable |
saveState()
Save state parcelable.
|
void |
setCardNumberColor(int color)
Sets card number color.
|
void |
setFocused(boolean isFocused)
Sets focused.
|
private void |
setHintTextColor(android.support.design.widget.TextInputLayout textInputLayout,
int color) |
private void |
setupAddressOnCardField() |
private void |
setupCardTheme() |
void |
updateAddressOnCardView(boolean isShow)
Update address on card view.
|
void |
updateCardSystemsRecyclerView(company.tap.tapcardvalidator_android.CardBrand brand,
CardScheme cardScheme)
Update card systems recycler view.
|
void |
updateCCVEditTextCardType(company.tap.tapcardvalidator_android.CardBrand cardBrand)
Update ccv edit text card type.
|
private boolean |
validateCardFields() |
private boolean |
validateCardHolderName() |
private company.tap.tapcardvalidator_android.DefinedCardBrand |
validateCardNumber(java.lang.String cardNumber) |
private boolean |
validateCVV() |
private java.lang.String |
validateLength(java.lang.String cardNumber) |
attachToViewModel, detachFromViewModel, newInstance, unbind
private static final int BIN_NUMBER_LENGTH
private static final int NAME_ON_CARD_MAX_LENGTH
private android.support.design.widget.TextInputLayout cardNumberFieldTextInputLayout
private android.widget.EditText cardNumberField
private android.widget.ImageButton cardScannerButton
private android.support.design.widget.TextInputLayout expirationDateFieldTextInputLayout
private ExpirationDateEditText expirationDateField
private android.support.design.widget.TextInputLayout cvvFieldTextInputLayout
private CvvEditText cvvField
private android.support.design.widget.TextInputLayout nameOnCardFieldTextInputLayout
private android.widget.EditText nameOnCardField
private android.support.design.widget.TextInputLayout addressOnCardLayout
private android.widget.EditText addressOnCardField
private android.support.constraint.ConstraintLayout saveCardLayout
private android.widget.TextView saveCardDescriptionTextView
private android.widget.Switch saveCardSwitch
private android.support.v7.widget.RecyclerView cardSystemsRecyclerView
private android.support.v7.widget.LinearLayoutManager linearLayoutManager
private CardCredentialsViewModel viewModel
private CardCredentialsViewHolder.CardCredentialsTextWatcher cardCredentialsTextWatcher
CardCredentialsViewHolder(android.view.View view)
view
- the viewpublic void setCardNumberColor(int color)
color
- the colorprivate void setupCardTheme()
private void configureSaveCardSwitch()
private void setHintTextColor(android.support.design.widget.TextInputLayout textInputLayout, int color)
private java.util.ArrayList<PaymentOption> getPaymentOption()
public void bind(CardCredentialsViewModelData data)
PaymentOptionsBaseViewHolder
bind
in class PaymentOptionsBaseViewHolder<CardCredentialsViewModelData,CardCredentialsViewHolder,CardCredentialsViewModel>
data
- the dataprivate boolean validateCardFields()
private boolean validateCVV()
private boolean validateCardHolderName()
public void setFocused(boolean isFocused)
PaymentOptionsBaseViewHolder
setFocused
in class PaymentOptionsBaseViewHolder<CardCredentialsViewModelData,CardCredentialsViewHolder,CardCredentialsViewModel>
isFocused
- the is focusedprivate void initCardSystemsRecyclerView(java.util.ArrayList<PaymentOption> paymentOptions)
public void updateCardSystemsRecyclerView(company.tap.tapcardvalidator_android.CardBrand brand, CardScheme cardScheme)
brand
- the brandcardScheme
- the card schemeprivate company.tap.tapcardvalidator_android.DefinedCardBrand validateCardNumber(java.lang.String cardNumber)
public void updateCCVEditTextCardType(company.tap.tapcardvalidator_android.CardBrand cardBrand)
cardBrand
- the card brandprivate void setupAddressOnCardField()
public void updateAddressOnCardView(boolean isShow)
isShow
- the is showprivate java.lang.String validateLength(java.lang.String cardNumber)
private android.widget.EditText getAddressOnCardField()
public android.os.Parcelable saveState()
PaymentOptionsBaseViewHolder
saveState
in class PaymentOptionsBaseViewHolder<CardCredentialsViewModelData,CardCredentialsViewHolder,CardCredentialsViewModel>
public void restoreState(android.os.Parcelable state)
PaymentOptionsBaseViewHolder
restoreState
in class PaymentOptionsBaseViewHolder<CardCredentialsViewModelData,CardCredentialsViewHolder,CardCredentialsViewModel>
state
- the state