【发布时间】:2018-10-10 14:40:07
【问题描述】:
此测试用例无法更改 Xamarin 条目的文本颜色。我可以将背景颜色更改为几种特定颜色??!!!其实,无论做什么,我都可以改变Entry的文字颜色。
如何重现
Visual Studio 2017 - 打开新的跨平台项目/Net Standard Master-Detail / Android 仅用于此目的。
-
将入口自定义渲染器添加到您的 android。代码示例:
using Xamarin.Forms.Platform.Android; using Xamarin.Forms; using Android.Content; [assembly: ExportRenderer(typeof(Entry), typeof(MyCondoCPML.Droid.MyEntryRenderer))] namespace MyCondoCPML.Droid { class MyEntryRenderer : EntryRenderer { public MyEntryRenderer(Context context) : base(context) { } protected override void OnElementChanged(ElementChangedEventArgs<Entry> e) { base.OnElementChanged(e); if (Control != null) { Control.SetTextColor(global::Android.Graphics.Color.Red); Control.SetBackgroundColor(global::Android.Graphics.Color.LightGreen); } } } } 在 api 24 上通过 USB 运行 - android 版本 7(三星 S5 NEO)
结果
背景为浅绿色,但文字颜色为黑色!为什么?!我什么都试过了。哈哈。直到你们告诉我当然...
问候,
附:是的,我尝试了 Xamarin 教程/doc/samples/etc。是的,我在堆栈、谷歌、c# 角落等上阅读了任何我能读到的东西...... P.P.S 我的行为也无法更改文本颜色(红色):(
马丁
【问题讨论】:
标签: c# xamarin.forms custom-renderer