下面列出了怎么用android.text.InputFilter.LengthFilter的API类实例代码及写法,或者点击链接到github查看源代码。
private void updateCardType() {
CardType type = CardType.forCardNumber(getText().toString());
if (mCardType != type) {
mCardType = type;
InputFilter[] filters = { new LengthFilter(mCardType.getMaxCardLength()) };
setFilters(filters);
invalidate();
if (mOnCardTypeChangedListener != null) {
mOnCardTypeChangedListener.onCardTypeChanged(mCardType);
}
}
}
private void init() {
if (isInEditMode()) {
return;
}
setInputType(InputType.TYPE_CLASS_PHONE);
InputFilter[] filters = { new LengthFilter(14) };
setFilters(filters);
addTextChangedListener(new PhoneNumberFormattingTextWatcher());
}
/**
* Sets the card type associated with the security code type. {@link CardType#AMEX} has a
* different icon and length than other card types. Typically handled through
* {@link com.braintreepayments.cardform.view.CardEditText.OnCardTypeChangedListener#onCardTypeChanged(com.braintreepayments.cardform.utils.CardType)}.
*
* @param cardType Type of card represented by the current value of card number input.
*/
public void setCardType(CardType cardType) {
mCardType = cardType;
InputFilter[] filters = { new LengthFilter(cardType.getSecurityCodeLength()) };
setFilters(filters);
setContentDescription(getContext().getString(cardType.getSecurityCodeName()));
setFieldHint(cardType.getSecurityCodeName());
invalidate();
}
private void init() {
setInputType(InputType.TYPE_CLASS_NUMBER);
setFilters(new InputFilter[]{new LengthFilter(DEFAULT_MAX_LENGTH)});
addTextChangedListener(this);
}
private void setInputFilters() {
LengthFilter lengthFilter = new LengthFilter(MAX_NUM_CHARS);
DigitsOnlyFilter digitsOnlyFilter = DigitsOnlyFilter.newInstance(MAX_NUM_CHARS);
InputFilter[] filters = { lengthFilter, digitsOnlyFilter};
setFilters(filters);
}
private void init() {
setInputType(InputType.TYPE_CLASS_PHONE);
InputFilter[] filters = { new LengthFilter(4) };
setFilters(filters);
}
private void init() {
setInputType(InputType.TYPE_TEXT_VARIATION_POSTAL_ADDRESS);
InputFilter[] filters = { new LengthFilter(16) };
setFilters(filters);
}
private void init() {
setInputType(InputType.TYPE_CLASS_TEXT);
InputFilter[] filters = { new LengthFilter(255) };
setFilters(filters);
}