Xamarin Forms - WinPhone - 格式化文本

时间:2016-10-27 07:16:20

标签: html xamarin webview xamarin.forms xamarin.winphone

我的应用需要在Android,iOS和WinPhone 8.1上运行。它需要一个包含大量格式的长文本页面:

粗体
子弹清单
链接(http,邮件,电话)

因为它必须在所有3个平台上运行,所以我尝试创建一个HTML字符串,以便将其发送到 WebView,如下所示:

MyWebView.Source = new HtmlWebViewSource {Html = stringHtml }; 

因此,我可以将<b>用于加粗,<ul>用于项目符号列表,<a>用于链接。

因为我还需要一个自定义字体和特定大小,在我的html字符串中有一个包含所有这些信息的新样式。
它工作....但在Windows Phone上有2个问题:

  1. 所有项目符号列表字体大小确实小于文本的其余部分
  2. 所有页面都显示空白的网页浏览量,但如果我重新加载(很多次)或等待3/4秒,那么它会显示内容
  3. 对这些问题有什么看法吗?

    如果有另一种与WebView不同的解决方案......欢迎您!

1 个答案:

答案 0 :(得分:0)

Xamarin.Forms在Label中包含 FormattedText 属性(本指南应该帮助您理解它:Xamarin.Forms FormattedText)。但是有一些你想做的事情是无法完成的,而且这些是:

  • FormattedText没有链接,但如果我没有弄错,如果您在WebView中使用链接,它们只能在该WebView中工作,因此链接将在与文本相同的空间中打开。
  • FormattedText没有项目符号列表。你可以解决这个问题,添加ASCII项目符号(在Windows中:按住ALT并按数字7)和一些空格来缩进段落。

你想要的其余部分(粗体,斜体,颜色变化等)FormattedText有。

希望它有所帮助! :)