该要求是显示键盘的默认数字,可以像这样输入一个负数:

但是没有办法为这种方式设置默认值。
如果你设置了这个键盘,你不能输入负数,点击减号是不响应的。
纯数字键盘,但不能输入负数

有什么解决方案吗?
发布于 2017-10-17 23:39:06
您必须为NumericEntry创建自己的控件,如下所示:
public class NumericTextBox : Entry
{
public NumericTextBox()
{
this.Keyboard = Keyboard.Numeric;
}
}然后,在Android项目中,创建自定义渲染器:
[assembly: ExportRenderer(typeof(NumericTextBox), typeof(CustomNumericTextboxRenderer))]
namespace xxx.Droid.Renderers
{
public class CustomNumericTextboxRenderer : EntryRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
{
base.OnElementChanged(e);
var native = Control as EditText;
native.InputType = Android.Text.InputTypes.ClassNumber | Android.Text.InputTypes.NumberFlagSigned | Android.Text.InputTypes.NumberFlagDecimal;
}
}
}这已经在Droid设备上进行了测试和工作。允许输入带小数点的负数/正数。它正确地防止了输入错误的十进制值。
https://stackoverflow.com/questions/46782149
复制相似问题