禁用默认 Android 键盘上的键
Disable keys on the default Android keyboard
我的 Xamarin 应用程序主页上有一个 Entry
控件,用于输入一个人的年龄。我已将键盘设置为 Keyboard="Numberic"
然而,这会造成混淆,因为至少对于 Android,"Done" 键在退格键下方,但在设置键和 .- 键上方。这意味着当用户试图按下 "Done" 时,他们忘记了该键并不像您预期的那样位于右下角,并且他们一直错误地按下设置键并进入他们的 phone 设置有点烦人,这是可以理解的。
是否可以禁用设置键和.- 键,或者调换它们的位置?我不希望它成为可能,所以在这种情况下,还有其他方法可以解决这个问题吗?
截图以阐明我的意思 - 是否可以移动或禁用带有设置齿轮和“.-”的键,以防止用户打开他们的 phone 设置并输入 negative/decimal 数字在?
我有一段时间没有使用过 C#,也从未使用过 Android,但是从大多数语言中删除字符串中的字符的想法通常很简单。
基于我们在评论中的小讨论,以及一些研究;我相信这就是您要从用户在您的应用程序中输入的 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 的默认键盘的方法,因此您可以删除不需要的键(即设置键)或重新排序它们,所以我仍在考虑是否您决定必须这样做为此,您需要为应用程序构建自定义键盘。
我的 Xamarin 应用程序主页上有一个 Entry
控件,用于输入一个人的年龄。我已将键盘设置为 Keyboard="Numberic"
然而,这会造成混淆,因为至少对于 Android,"Done" 键在退格键下方,但在设置键和 .- 键上方。这意味着当用户试图按下 "Done" 时,他们忘记了该键并不像您预期的那样位于右下角,并且他们一直错误地按下设置键并进入他们的 phone 设置有点烦人,这是可以理解的。
是否可以禁用设置键和.- 键,或者调换它们的位置?我不希望它成为可能,所以在这种情况下,还有其他方法可以解决这个问题吗?
截图以阐明我的意思 - 是否可以移动或禁用带有设置齿轮和“.-”的键,以防止用户打开他们的 phone 设置并输入 negative/decimal 数字在?
我有一段时间没有使用过 C#,也从未使用过 Android,但是从大多数语言中删除字符串中的字符的想法通常很简单。
基于我们在评论中的小讨论,以及一些研究;我相信这就是您要从用户在您的应用程序中输入的 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 的默认键盘的方法,因此您可以删除不需要的键(即设置键)或重新排序它们,所以我仍在考虑是否您决定必须这样做为此,您需要为应用程序构建自定义键盘。