【问题标题】:Can I show an image from html in text view with Xamarin.Android?我可以使用 Xamarin.Android 在文本视图中显示来自 html 的图像吗?
【发布时间】:2016-05-08 07:43:53
【问题描述】:

我正在尝试使用 Xamarin.Android 在文本视图中显示来自 html 的图像。 我已设法显示 html 但无法显示图片。 欢迎任何想法。

   Epub epub = new Epub(Android.OS.Environment.ExternalStorageDirectory.Path + "/Download/testBook.epub");

            //Get book title (Every epub file can have multiple titles)
            string title = epub.Title[0];

            //Get book authors (Every epub file can have multiple authors)
            string author = epub.Creator[0];

            //Get all book content as plain text
            string plainText = epub.GetContentAsPlainText();

            //Get all book content as html text
            string htmlText = epub.GetContentAsHtml();

            //Get some part of book content
            ContentData contentData = epub.Content[0] as ContentData;

            //Get Table Of Contents (TOC)
            List<NavPoint> navPoints = epub.TOC;

            String text = String.Format("<!DOCTYPE html PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<HTML>\n   <HEAD>\n      <TITLE>\n         A Small Hello \n      </TITLE>\n   </HEAD>\n<BODY>\n   <H1>Hi</H1>\n   <P style=\"color: red\">This is very minimal \"hello world\" HTML document.</P> \n</BODY>\n</HTML>");

            ePubEditText.CustomSelectionActionModeCallback = new CustomSelectionMenu(this);

            ePubEditText.TextFormatted = Html.FromHtml(htmlText);

【问题讨论】:

    标签: android html image xamarin textview


    【解决方案1】:

    Android TextView 的设计不是为了显示这样的内容。

    如果您将TextView 替换为WebView,您可以从字符串、应用中捆绑的本地页面以及远程网页加载“浏览器”中的内容:

    String text = String.Format("<!DOCTYPE html PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<HTML>\n   <HEAD>\n      <TITLE>\n         A Small Hello \n      </TITLE>\n   </HEAD>\n<BODY>\n   <H1>Hi</H1>\n   <P style=\"color: red\">This is very minimal \"hello world\" HTML document.</P> \n</BODY>\n</HTML>");
    var webViewString = FindViewById<WebView>(Resource.Id.webViewString);
    webViewString.LoadData(text, "text/html", null);
    
    var webViewLocalPage = FindViewById<WebView>(Resource.Id.webViewLocalPage);
    webViewLocalPage.LoadUrl("file:///android_asset/HTML/index.html");
    

    Xamarin:Load Local Content

    【讨论】:

      猜你喜欢
      • 2018-04-05
      • 1970-01-01
      • 1970-01-01
      • 2022-07-27
      • 1970-01-01
      • 2013-06-01
      • 1970-01-01
      • 2011-04-28
      • 2019-12-10
      相关资源
      最近更新 更多