Xamarin.Forms 仅在一个平台 (iOS) 上更改条目的占位符颜色和文本颜色

Posted

技术标签:

【中文标题】Xamarin.Forms 仅在一个平台 (iOS) 上更改条目的占位符颜色和文本颜色【英文标题】:Xamarin.Forms Change placeholder color and textcolor of entry ONLY on ONE platform (iOS) 【发布时间】:2020-12-21 10:08:06 【问题描述】:

在我的 xamarin.forms 应用程序中,我正在使用此条目:

                        <Entry
                             x:Name="entry_passwort_login"
                             PlaceholderColor="#ffffff"
                             TextColor="#ffffff"
                             IsPassword="true"
                             FontFamily="Galvji-01.ttf"
                             HorizontalOptions="FillAndExpand"
                             VerticalOptions="Start"
                             Placeholder="Passwort"/>

它在 android 上看起来很棒,因为背景是黑色的。我还在 styles.xml 中进行了更改,以使元素的突出显示颜色变为黄色。

但是ios在后台渲染一个带有白框的条目:

如您所见,因此占位符和写在其上的实际文本都不可见。但我不想改变整个背景。

如何将 IOS 条目的占位符和文本颜色设置为仅黑色,同时保持所有 android 设置不变?

谢谢!

【问题讨论】:

您想从 XAML 中执行此操作吗?还是有风格?还是你不在乎?无论哪种方式,您都在寻找这个:docs.microsoft.com/en-us/xamarin/xamarin-forms/xaml/xaml-basics/… 【参考方案1】:

您可以在 iOS 中指定其他颜色。例如,我在 iOS 中将 PlaceholderColor 设置为红色,如下代码所示。

            <Entry
                             x:Name="entry_passwort_login"
                             TextColor="#ffffff"
                             FontFamily="Galvji-01.ttf"
                             IsPassword="true"
                             HorizontalOptions="FillAndExpand"
                             VerticalOptions="Start"
                             Placeholder="Passwort">
                <Entry.PlaceholderColor>
                    <OnPlatform x:TypeArguments="Color">
                        <On Platform="iOS" Value="Red"></On>
                        <On Platform="Android" Value="#ffffff"></On>
                    </OnPlatform>
                </Entry.PlaceholderColor>
                
            </Entry>

【讨论】:

如果以上回答对您有帮助,请不要忘记采纳为回答(点击此回答左上角的“✔”),对有类似问题的人会有所帮助

以上是关于Xamarin.Forms 仅在一个平台 (iOS) 上更改条目的占位符颜色和文本颜色的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin.Forms ImageButton 不起作用,单击不起作用,调试断点仅在 iOS 上根本不会被命中

在 iOS 上的 Xamarin.Forms.Maps 中使用 Xamarin.Essentials Geolocation 获取设备位置的奇怪问题

Xamarin Forms Ui 项目(多平台)

Xamarin.Forms for iOS初体验

Xamarin.Forms for iOS初体验

Xamarin.Forms for iOS初体验