我的Xamarin应用程序主页上有一个Entry
控件,用于输入一个人的年龄。我已将键盘设置为Keyboard="Numberic"
然而,这造成了混乱,因为至少对Android来说,“完成”键在退格键的下方,但在设置键和.-键的上方。这意味着当用户试图按下“完成”时,他们忘记了键并不在你所期望的右下角,他们一直错误地按下设置键并进入他们的手机设置,这是可以理解的,有点恼人。
是否可以禁用设置键和.-键,或者交换它们的位置?我不认为这是可能的,那么在这种情况下,有没有其他方法可以绕过这个问题呢?
屏幕截图来阐明我的意思-可以移动或禁用带有设置齿轮和".-“的键,以防止用户打开他们的手机设置并输入负数/十进制数?
发布于 2018-06-13 23:16:15
我有一点没有使用过C#,也从来没有在安卓上使用过,但是从字符串中删除字符的想法是大多数语言通常都很简单的。
根据我们在评论中的小讨论和一些研究;我相信这就是您要从应用程序中用户输入的EditText字段中剔除不需要的值:
var editText = FindViewById<EditText> (Resource.Id.editText);
editText.TextChanged += (object sender, Android.Text.TextChangedEventArgs et) => {
//step 1 grab editText value
String newString = et.Text.ToString();
//step 2 replace unwanted characters (currently '.' & '-')
newString = newString.Replace(".", "").Replace("-", "");
//step 3 set the editText field to the updated string
editText.Text = newString;
};
我还没有找到一种方法来更改Android的默认键盘,以便您可以删除不需要的键(即设置键)或重新排序它们,所以我仍然在想,如果您决定必须这样做,您将需要为应用程序构建一个自定义键盘。
https://stackoverflow.com/questions/50835976
复制相似问题