我有這個EditText,我希望用戶鍵入一個信用卡號碼,所以我想格式化字符串,而用戶輸入它,我特別希望字符串有一個空間每一個4號,這樣的:Xamarin android格式字符串onkey按
XXXX XXXX XXXX XXXX
我發現我可以用TextWatcher和的onkeyup,但我不明白爲什麼在EditText上使用它,如果有一個人能解釋我,我真的很感激它,謝謝。
我有這個EditText,我希望用戶鍵入一個信用卡號碼,所以我想格式化字符串,而用戶輸入它,我特別希望字符串有一個空間每一個4號,這樣的:Xamarin android格式字符串onkey按
XXXX XXXX XXXX XXXX
我發現我可以用TextWatcher和的onkeyup,但我不明白爲什麼在EditText上使用它,如果有一個人能解釋我,我真的很感激它,謝謝。
創建一個實現ITextWatcher
接口的類。然後(在片段或OnCreateView
)添加一個實例類的文本改變了聽衆......
public class CreditCardFormatter : Java.Lang.Object, ITextWatcher
{
private EditText _editText;
public CreditCardFormatter(EditText editText)
{
_editText = editText;
}
public void AfterTextChanged(IEditable s)
{
}
public void BeforeTextChanged(ICharSequence s, int start, int count, int after)
{
}
public void OnTextChanged(ICharSequence s, int start, int before, int count)
{
}
}
在你的活動..
public override void OnCreate()
{
// other code..
myEditText.AddTextChangedListener(new CreditCardFormatter(myEditText));
}
然後使用重寫方法重新格式化文本展示您的需求。
你的意思是使用它與'EditText'?用戶不允許輸入「TextView」,所以這些都不會起作用。 –
是的,對不起,我的意思是EditText – elunap