Xamarin.Forms - тег HTML на ярлыке с использованием файла resx - PullRequest
0 голосов
/ 26 марта 2020

Можно ли использовать теги HTML в файле resx и использовать его как текст метки? Я пытался использовать <b> Некоторый текст </b>, но не работает. Теги печатаются как текст.

Мне нужно решение кроссплатформенное (Android & iOS).

1 Ответ

1 голос
/ 26 марта 2020

В Xamarin.Forms v4.3 и выше ваша метка может непосредственно размещать HTML теги и работать, например,

Когда вы проверяете документы Microsoft, вы видите:

Label label = new Label
{
    Text = "This is <strong style=\"color:red\">HTML</strong> text.",
    TextType = TextType.Html
};

В приведенном выше примере символы двойной кавычки в HTML должны быть экранированы с помощью символа \.

В XAML строки HTML могут стать нечитаемыми из-за дополнительного экранирования Символы <и>:

<Label Text="This is &lt;strong style=&quot;color:red&quot;&gt;HTML&lt;/strong&gt; text."
   TextType="Html"  />

В качестве альтернативы, для большей читабельности HTML может быть встроен в раздел CDATA

<Label TextType="Html">
<![CDATA[
This is <strong style="color:red">HTML</strong> text.
]]>
</Label>

В этом примере для свойства Label.Text задана строка HTML, встроенная в раздел CDATA. Это работает, потому что свойство Text является ContentProperty для класса Label.

На следующих снимках экрана показана метка, отображающая HTML:

ПРИМЕЧАНИЕ. Отображается HTML in Метка ограничена тегами HTML, которые поддерживаются базовой платформой.

Также только что протестирован с Resx, и это тоже работает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...