簡體   English   中英

禁用默認Android鍵盤上的按鍵

[英]Disable keys on the default Android keyboard

我的Xamarin應用程序主頁上有一個Entry控件,用於輸入一個人的年齡。 我把鍵盤設置為Keyboard="Numberic"

然而,這引起了混亂,因為對於Android至少,“完成”鍵位於退格區之下,但高於設置鍵和.-鍵。 這意味着當用戶試圖按“完成”時,他們會忘記按鍵不在你想象的右下角,並且他們一直誤按設置鍵並進入他們的手機設置,這有點刺激,可以理解。

是否可以禁用設置鍵和.-鍵,或者交換位置? 我不期待它是可能的,所以在這種情況下,還有另一種方法可以解決這個問題嗎?

屏幕截圖以澄清我的意思 - 可以移動或禁用具有設置cog和“.-”的鍵,以防止用戶打開他們的電話設置並將負數/十進制數放入?

在此輸入圖像描述

我沒有使用過C#,也從未使用過Android,但是從String中刪除字符的想法是大多數語言通常很簡單。

基於我們在評論中的小討論,以及一些研究; 我相信您正在尋找從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;

};

資源: https//github.com/xamarin/recipes/tree/master/Recipes/android/controls/edittext/capture_user_input_text

我還沒有找到一種方法來更改Android的默認鍵盤,這樣你就可以刪除不需要的鍵(即設置鍵)或重新排序,所以我仍然在想,如果你決定必須這樣做,你需要建立一個自定義應用程序的鍵盤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM