在Xamarin Forms中创建自定义标签背景

时间:2017-07-17 08:15:26

标签: xamarin xamarin.android xamarin.forms xamarin.uwp

我正在开发Xamarin表单,并且我有一个可以包含不同数量文本的标签。

我在表单中使用的平台主要是:Android和UWP(不需要iOS ATM)。

我想给这个标签一个不是矩形的背景,更像是这样:(聊天/消息泡泡风格)

Image of desired background effect

我已经阅读了一些可能的解决方案,但我对所有可用的选项感到困惑。

根据我对此的研究以及与其他平台的合作,我基本上有两种选择:

  1. 设置图像背景。
  2. 使用自定义图形控件创建我想要的形状。
  3. 我不确定如何在Xamarin Forms中实现任何这些选项,我很乐意得到一些帮助。

1 个答案:

答案 0 :(得分:1)

简单的解决方案是在Label内托管View,并在标签后面设置Image

<Grid>
    <Image Source="message_background.png">
    <Label Text="{Binding Message}">
</Grid>

如果您在屏幕上拥有大量这些功能,那么效果不是很好。那么最好的解决方案是为每个平台使用自定义渲染器,并在本机使用它。这将提供更好的性能,更灵活。但是它的维护和初期工作更多。

您可以阅读自定义渲染器here