Xamarin.Formsプロジェクトで作業しているので、エントリの下端にボーダーを追加するエントリクラスのカスタムレンダラーを作成したかったのみ。私はこの部分を完成させましたが、Xamarin.Formsはテキストを自動的にエントリー内に垂直に配置しないことに気付きました。しかし、私がこの機能を追加したとき、そのページにあるエントリは一切読み込まれなくなりました。ここでXamarin.Formsテキストの重力が指定されていると、Androidのカスタムレンダラーが機能しなくなる
はレンダラ参考
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ですべての私のレイアウト作業をしていますし、下の境界線とビットが独自にうまく働きました。私が重力を置いた線を外している限り、すべてが機能します。 33:45.971 D /モノ(22308):アセンブリローダプローブ位置:
また、これはそのすべて
07-01 11で役立つ場合、デバッグコンソールにプリントアウトものである「/貯蔵/エミュレート/ 0/Android/data/HuntFishNy.Droid/files /。 /HuntFishNY.dll 'を上書きします。 07-01 11:33:45.981 D/Mono(22308):Image addref HuntFishNy [0x96ab1880] - > /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 のオーバーライド /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.981 D/Mono(22308):Assembly Loaderがアセンブリからロードされました: '/storage/emulated/0/Android/data/HuntFishNy.Droid /ファイル/。 /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を解析しようとする設定/assemblies/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):Image addref HuntFishNy [0x96ab1940] - > /storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 のオーバーライド /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.981 D/Mono(22308):Assembly Loaderがアセンブリからロードされました: '/storage/emulated/0/Android/data/HuntFishNy.Droid /ファイル/。 /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を解析しようとする設定/assemblies/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):アセンブリローダーのプロービング場所: '/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 /HuntFishNY.dll 'を上書きします。 07-01 11:33:45.991 D/Mono(22308):画像の追加情報HuntFishNy [0x96ab18e0] - > /storage/emulated/0/Android/data/HuntFishNy.Droid/files/ を無効にする /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45。991 D/Mono(22308): '/storage/emulated/0/Android/data/HuntFishNy.Droid/files/からAssembly Loaderがロードされたアセンブリ。 /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を解析しようとする設定/assemblies/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):アセンブリローダーのプロービング場所: '/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 /HuntFishNY.dll 'を上書きします。 07-01 11:33:45.991 D/Mono(22308):画像の追加情報HuntFishNy [0x96ab1880] - > /storage/emulated/0/Android/data/HuntFishNy.Droid/files/ のオーバーライド /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.991 D/Mono(22308):Assembly Loaderアセンブリを場所からロードしました: '/storage/emulated/0/Android/data/HuntFishNy.Droid /ファイル/。 /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を解析しようとする設定/assemblies/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):アセンブリローダーのプロービング場所: '/storage/emulated/0/Android/data/HuntFishNy.Droid/files/。 /HuntFishNY.dll 'を上書きします。 07-01 11:33:45.991 D/Mono(22308):Image addref HuntFishNy [0x96ab1940] - > /storage/emulated/0/Android/data/HuntFishNy.Droid/files/ のオーバーライド /HuntFishNY.dll[0x9b32ae00]:2 07-01 11:33:45.991 D/Mono(22308):Assembly Loaderアセンブリを場所からロードしました: '/storage/emulated/0/Android/data/HuntFishNy.Droid /ファイル/。 /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を解析しようとする設定/assemblies/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]作業者が終了しました