繁体   English   中英

指定文字重力时,Android中的Xamarin.Forms自定义渲染器将停止工作

[英]Xamarin.Forms Custom Renderer in Android stops working when text gravity is specified

因此,我正在研究Xamarin.Forms项目,我想为Entry Class创建一个自定义渲染器,该渲染器仅在条目的底部添加边框。 我已经完成了这一部分,但是后来意识到Xamarin.Forms不会自动将文本垂直置于条目的中心。 但是,当我添加此功能时,带有“条目”的页面将不再加载。

这是我的渲染器代码

using Xamarin.Forms.Platform.Android;
using HuntFishNy.Droid.Renderer;
using Xamarin.Forms;
using HuntFishNy.Views;


[assembly: ExportRenderer(typeof(BottomBorderEntry),typeof(BottomBorderEntryRenderer))]

namespace HuntFishNy.Droid.Renderer
{


class BottomBorderEntryRenderer : EntryRenderer
{
    protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
    {
        base.OnElementChanged(e);

        if (Control != null)
        {
            Control.Background = Resources.GetDrawable(Resource.Drawable.BottomBorderRectangle);
            Control.SetForegroundGravity(Android.Views.GravityFlags.CenterVertical);

        }
    }


   }
}

作为参考,我正在XAML中完成所有布局工作,底部边框的部分本身就可以正常工作。 只要我不设置引力线,一切都会起作用。

另外,如果有帮助的话,这就是在调试控制台中打印出来的内容

07-01 11:33:45.971 D / Mono(22308):程序集加载程序探测位置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.981 D / Mono(22308):图像addref HuntFishNy [0x96ab1880]-> /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.981 D / Mono(22308):程序集加载程序从以下位置加载了程序集:'/存储/仿真/ 0 / Android /数据/HuntFishNy.Droid/files/ 。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.981 D / Mono(22308):尝试解析的配置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNy.dll.config'。 07-01 11:33:45.981 D / Mono(22308):配置尝试解析:'/ Users / builder / data / lanes / 2923/52635947 / source / monodroid / builds / install / mono-armv7 / etc / mono /程序集/HuntFishNy/HuntFishNy.config”。 07-01 11:33:45.981 D / Mono(22308):正在卸载图像/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll [0x9b32ae00]。 07-01 11:33:45.981 D / Mono(22308):程序集加载器探测位置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.981 D / Mono(22308):图像addref HuntFishNy [0x96ab1940]-> /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.981 D / Mono(22308):程序集加载程序从以下位置加载了程序集:'/存储/仿真/ 0 / Android /数据/HuntFishNy.Droid/files/ 。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.981 D / Mono(22308):尝试解析的配置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNy.dll.config'。 07-01 11:33:45.981 D / Mono(22308):配置尝试解析:'/ Users / builder / data / lanes / 2923/52635947 / source / monodroid / builds / install / mono-armv7 / etc / mono /程序集/HuntFishNy/HuntFishNy.config”。 07-01 11:33:45.981 D / Mono(22308):正在卸载图像/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll [0x9b32ae00]。 07-01 11:33:45.991 D / Mono(22308):Assembly Loader探测位置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.991 D / Mono(22308):图像addref HuntFishNy [0x96ab18e0]-> /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.991 D / Mono(22308):程序集加载程序从以下位置加载程序集:'/存储/仿真/ 0 / Android /数据/HuntFishNy.Droid/files/ 。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.991 D / Mono(22308):尝试解析的配置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNy.dll.config'。 07-01 11:33:45.991 D / Mono(22308):配置尝试解析:'/ Users / builder / data / lanes / 2923/52635947 / source / monodroid / builds / install / mono-armv7 / etc / mono /程序集/HuntFishNy/HuntFishNy.config”。 07-01 11:33:45.991 D / Mono(22308):正在卸载图像/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll [0x9b32ae00]。 07-01 11:33:45.991 D / Mono(22308):Assembly Loader探测位置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.991 D / Mono(22308):图像addref HuntFishNy [0x96ab1880]-> /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.991 D / Mono(22308):程序集加载程序从以下位置加载程序集:'/存储/仿真/ 0 / Android /数据/HuntFishNy.Droid/files/ 。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.991 D / Mono(22308):尝试解析的配置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNy.dll.config'。 07-01 11:33:45.991 D / Mono(22308):配置尝试解析:'/ Users / builder / data / lanes / 2923/52635947 / source / monodroid / builds / install / mono-armv7 / etc / mono /程序集/HuntFishNy/HuntFishNy.config”。 07-01 11:33:45.991 D / Mono(22308):正在卸载图像/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll [0x9b32ae00]。 07-01 11:33:45.991 D / Mono(22308):Assembly Loader探测位置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.991 D / Mono(22308):图像addref HuntFishNy [0x96ab1940]-> /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.991 D / Mono(22308):程序集加载程序从以下位置加载程序集:'/存储/仿真/ 0 / Android /数据/HuntFishNy.Droid/files/ 。 覆盖 /HuntFishNY.dll”。 07-01 11:33:45.991 D / Mono(22308):尝试解析的配置:'/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNy.dll.config'。 07-01 11:33:45.991 D / Mono(22308):配置尝试解析:'/ Users / builder / data / lanes / 2923/52635947 / source / monodroid / builds / install / mono-armv7 / etc / mono /程序集/HuntFishNy/HuntFishNy.config”。 07-01 11:33:45.991 D / Mono(22308):正在卸载图像/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 覆盖 /HuntFishNY.dll [0x9b32ae00]。 07-01 11:33:55.252 D / Mono(22308):[0x9beb5100]工作人员完成

Control.Gravity = GravityFlags.CenterVertical;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM