我的应用程序需要在Android, iOS和WinPhone 8.1上运行。它需要有一个包含大量格式的长文本的页面:
的
子弹列表
链接(http,邮件,电话)
因为它必须在所有3个平台上运行,我试图创建一个HTML字符串,以便将其发送到像这样的WebView:
MyWebView.Source = new HtmlWebViewSource {Html = stringHtml };
所以我可以使用<b>
为黑体,<ul>
为项目符号列表,<a>
为链接。
因为我还需要一个自定义字体和特定的大小,在我的html字符串有一个新的样式与所有这些信息。
它的工作原理……但在Windows Phone上有两个问题:
- 所有项目符号列表的字体大小都比其他文本小
- 所有页面显示空白的webview,但如果我重新加载它(很多次)或等待3/4秒,然后它显示内容
对这些问题有什么想法吗?
如果有另一个解决方案不同于WebView…它是受欢迎的!
Xamarin。Forms在标签中包含一个FormattedText属性(本指南将帮助您理解它):Xamarin。形式FormattedText)。但是有些事情你想做却不能用它来完成,这些是:
- FormattedText没有链接,但如果我没弄错的话,如果你在WebView中使用链接,它们只会在那个WebView中工作,所以链接将在与你的文本相同的空间打开。FormattedText没有项目符号列表。你可以绕过这个问题,添加ASCII项目符号(在windows:按住ALT并按数字7)和一些空格来缩进段落。
其余你想要的(粗体,斜体,颜色变化等)FormattedText有。
希望有帮助!:)