2017-10-17 18 views
0

需要は次のように負の数を入力することができますキーボードのデフォルト数を表示するには、次のとおりです。キーボードをテンキーパッドとして設定するにはどうすればいいですか?Xamarin.Formsに負の数を入力することはできますか?

enter image description here

をしかし、この方法のデフォルトを設定する方法はありません。

このキーボードを設定すると、負の数を入力することはできません。マイナス記号が応答していない場合は、クリックします。

ピュアテンキーが、負の数

enter image description here

を入力することはできませんが任意の解決策はありますか?

答えて

1

あなたは次のようにNumericEntryのための独自のコントロールを作成する必要があります:カスタムレンダラを作成し、あなたのAndroidプロジェクトで、その後

public class NumericTextBox : Entry 
{ 
    public NumericTextBox() 
    { 
     this.Keyboard = Keyboard.Numeric; 
    } 
} 

[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; 
     } 
    } 
} 

これはテストされ、ドロイドデバイスのために働いてきました。小数点を含む負の値/正の値を入力することができます。間違った小数点の値を正しく入力することはできません。

+0

@ジャックソン、あなたはWilson Vargasの例で 'TextBox'を' Entry'に置き換えることができます。 –

+0

@ York Shen - MSFT非常にありがとう! – Jackson

関連する問題