コード例 #1
0
        public void SetOptions(TextInputOptions options)
        {
            _host.InitEditorInfo((outAttrs) =>
            {
                outAttrs.InputType = options.ContentType switch
                {
                    TextInputContentType.Email => global::Android.Text.InputTypes.TextVariationEmailAddress,
                    TextInputContentType.Number => global::Android.Text.InputTypes.ClassNumber,
                    TextInputContentType.Password => global::Android.Text.InputTypes.TextVariationPassword,
                    TextInputContentType.Digits => global::Android.Text.InputTypes.ClassPhone,
                    TextInputContentType.Url => global::Android.Text.InputTypes.TextVariationUri,
                    _ => global::Android.Text.InputTypes.ClassText
                };

                if (options.AutoCapitalization)
                {
                    outAttrs.InitialCapsMode = global::Android.Text.CapitalizationMode.Sentences;
                    outAttrs.InputType      |= global::Android.Text.InputTypes.TextFlagCapSentences;
                }

                if (options.Multiline)
                {
                    outAttrs.InputType |= global::Android.Text.InputTypes.TextFlagMultiLine;
                }

                outAttrs.ImeOptions |= ImeFlags.NoFullscreen | ImeFlags.NoExtractUi;
            });
        }
コード例 #2
0
    public static TextInputOptions FromStyledElement(StyledElement avaloniaObject)
    {
        var result = new TextInputOptions
        {
            ContentType        = GetContentType(avaloniaObject),
            Multiline          = GetMultiline(avaloniaObject),
            AutoCapitalization = GetAutoCapitalization(avaloniaObject),
            IsSensitive        = GetIsSensitive(avaloniaObject),
            Lowercase          = GetLowercase(avaloniaObject),
            Uppercase          = GetUppercase(avaloniaObject)
        };

        return(result);
    }
コード例 #3
0
 public void SetOptions(TextInputOptions options)
 {
     // No-op
 }