use*_*675 4 c# character uitextfield xamarin.ios
我没有找到任何解决方案如何限制textfield只允许在Monotouch中的数字.
另外我希望那里不超过8个字符.
要UITextField在MonoTouch中实现仅数字,我使用以下代码:
var numberTextField = new UITextField { KeyboardType = UIKeyboardType.NumberPad };
numberTextField.ShouldChangeCharacters = (textField, range, replacement) =>
{
int number;
return replacement.Length == 0 || int.TryParse(replacement, out number);
};
Run Code Online (Sandbox Code Playgroud)
并限制特定数量的字符:
const int maxCharacters = 8;
textField.ShouldChangeCharacters = (textField, range, replacement) =>
{
var newContent = new NSString(textField.Text).Replace(range, new NSString(replacement)).ToString();
return newContent.Length <= maxCharacters;
};
Run Code Online (Sandbox Code Playgroud)
所以,合并:
const int maxCharacters = 8;
var numberTextField = new UITextField { KeyboardType = UIKeyboardType.NumberPad };
numberTextField.ShouldChangeCharacters = (textField, range, replacement) =>
{
var newContent = new NSString(textField.Text).Replace(range, new NSString(replacement)).ToString();
int number;
return newContent.Length <= maxCharacters && (replacement.Length == 0 || int.TryParse(replacement, out number));
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3942 次 |
| 最近记录: |