2017-07-17 100 views
0

我正在Xamarin表單中開發,並且我有一個標籤可以包含不同數量的文本。在Xamarin表單中創建自定義標籤背景

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

我想給這個標籤背景不是長方形,這是更多的東西是這樣的:(聊天/消息氣泡樣式)

Image of desired background effect

我看過一些可能的解決方案,但我米從所有可用的選項混淆。

據我瞭解我的周圍這項研究,並從我與其他平臺的工作基本上有兩種選擇:

  1. 設置圖像的背景。
  2. 使用自定義圖形控件來創建我想要的形狀。

我不確定如何在Xamarin Forms中實現這些選項,我很樂意爲您提供幫助。

回答

1

最簡單的解決辦法是舉辦View和集合內LabelImage背後的標籤:

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

這不是很高性能的,如果你要對屏幕有很多的這些。那麼最好的解決方案就是爲每個平臺使用一個自定義的渲染器來實現它。這會給予更好的性能更多的靈活性。儘管如此,這還是維護和初期工作。

您可以自定義渲染here

+1

設置背景圖片來源將是一個壞主意,閱讀起來,在OP是說文字的體積可能是動態的,所以高度將相應調整,那麼這將導致扭曲圖像和糟糕的用戶體驗。你的第二個答案應該是你的第一個答案。 =) – Digitalsa1nt

+0

我知道渲染器的基礎知識。但是應該如何使用渲染器來實現它?你能給我一些指導嗎? – JackPot16

+0

類似於這個https://stackoverflow.com/questions/43761186/how-to-create-a-speech-bubble-in-uwp和這個https://stackoverflow.com/questions/17541739/how-to- add-the-bubbles-to-textview-android頂部匹配分別搜索「uwp bubble textblock」和「android bubble textview」 –