2
電話番号の入力のために、国に基づいて番号プレフィックスを追加したいとします。画像のように: どうすればいいですか?Xamarinフォームのエントリにビジュアルプレフィックスを追加するにはどうすればよいですか?
電話番号の入力のために、国に基づいて番号プレフィックスを追加したいとします。画像のように: どうすればいいですか?Xamarinフォームのエントリにビジュアルプレフィックスを追加するにはどうすればよいですか?
私はこの
<StackLayout Orientation="Horizontal" BackgroundColor="Gray">
<Label Text="+995 |" BackgroundColor="Transparent" />
<Editor Text="699999999" BackgroundColor="Transparent"></Editor>
</StackLayout>
プレフィックスとエントリの編集者のためのラベルを持つ水平stacklayoutような何かをするだろう。
あなたが自分自身を見ることができるように私はピッカーの横に矢印の下のアイコンを表示するために私のアプリに同じアプローチを使用しています。
var datectrl = new NoBorderPicker()
{
VerticalOptions = LayoutOptions.Center,
FontSize = Device.GetNamedSize(NamedSize.Default, typeof(Label)) * FontSizes.EditFormControlFactor,
HeightRequest = 40,
BackgroundColor = Color.White,
HorizontalOptions = LayoutOptions.FillAndExpand,
};
var icon = new IconView()
{
Source = "ic_keyboard_arrow_right_black_24dp",
Foreground = Palette._019,
VerticalOptions = LayoutOptions.Center,
HorizontalOptions = LayoutOptions.End,
Margin = new Thickness(0, 0, 5, 0)
};
var stack = new StackLayout()
{
Orientation = StackOrientation.Horizontal,
Children =
{
datectrl,
icon
}
};
NoBorderPicker
は
[assembly: ExportRenderer(typeof(NoBorderPicker), typeof(CustomPicker))]
namespace ThesisSFA.Droid.Renderers
{
public class CustomPicker : PickerRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
{
base.OnElementChanged(e);
if (Control != null)
{
var customBG = new GradientDrawable();
customBG.SetColor(Android.Graphics.Color.Transparent);
customBG.SetCornerRadius(3);
Control.SetBackground(customBG);
var custdatepicker = (NoBorderPicker) this.Element;
this.Control.TextSize = (float)custdatepicker.FontSize;
}
}
}
}
は完全に働いたピッカーコントロールの境界線を除去するために、カスタムレンダラです、ありがとう! – nicks