在Xamarin.Forms中添加本机视图

问题描述 投票:0回答:1

我想在我的Xamarin.Forms项目中添加TextInputEdit文本,可以在代码中还是在XAML中添加?我需要添加对Mono.Android dll的引用?

xamarin.forms xamarin.android
1个回答
0
投票

您可以使用Customizing an Entry实现它。

enter image description here

创建自定义条目控件:

public class MyEntry : Entry
{
}

使用自定义控件:

<ContentPage ...
    xmlns:local="clr-namespace:CustomRenderer;assembly=CustomRenderer"
    ...>
    ...
    <local:MyEntry Text="In Shared Code" />
    ...
</ContentPage>

在Android上创建自定义渲染器:

using Xamarin.Forms.Platform.Android;

[assembly: ExportRenderer(typeof(MyEntry), typeof(MyEntryRenderer))]
namespace CustomRenderer.Android
{
    class MyEntryRenderer : EntryRenderer
    {
        public MyEntryRenderer(Context context) : base(context)
        {
        }

        protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
        {
            base.OnElementChanged(e);

            if (Control != null)
            {
                Control.SetBackgroundColor(global::Android.Graphics.Color.LightGreen);
            }
        }
    }
}

这里是the official sample供参考。

© www.soinside.com 2019 - 2024. All rights reserved.