如何从 Xcode for IOS 上的可编辑字符串加载 HTML?

Posted

技术标签:

【中文标题】如何从 Xcode for IOS 上的可编辑字符串加载 HTML?【英文标题】:How to load an HTML from an editable String on Xcode for IOS? 【发布时间】:2013-10-17 01:47:26 【问题描述】:

我需要在我的 ios 应用程序中加载一个 html,但我需要它是一个可编辑的 HTML,所以我的方法如下:

我创建了一个带有格式的 NSString,因此我可以根据一些变量使用 HTML 代码创建一个字符串:

NSString *googleGraphCode = [NSString stringWithFormat:@""""""/div>" google.load('visualization', '1.0', 'packages':['corechart']); google.setOnLoadCallback(drawChart); function drawChart() var data = new google.visualization.DataTable(); %@ data.addRows([%@]); var options = 'title':'%@', 'width':%i, 'height':%i ; var chart = new google.visualization.PieChart(document.getElementById('%@')); chart.draw(data, options); """" , chartID, javascriptCall, AJAX_Api, javaScriptCall, 列, 行, 标题, 宽度, 高度, chartID];

然后我用 HTMLString 加载了 webView:

[_graphHostView loadHTMLString:googleGraphCode baseURL:nil];

我得到了 NSLog 中的代码,我得到了这个:

""""

"" google.load('visualization', '1.0', 'packages':['corechart']); google.setOnLoadCallback(drawChart);函数 drawChart() var data = new google.visualization.DataTable(); data.addColumn('string', 'Tipo'); data.addColumn('string', 'CantidadGasto'); data.addRows([['Gastos', 30000], ['Ingresos', 50000]]); var options = 'title':'Su gráfica de balance:', 'width':320, 'height':300; var chart = new google.visualization.PieChart(document.getElementById('chart_div')); chart.draw(数据,选项); "" 【参考方案1】:

loadHTMLString 是让 webview 加载 html 的正确方法

问题可能是 _graphHostView 为 nil,因此不会发生 loadHTMLString。

如果以编程方式创建 _graphHostView,可能缺少 alloc/init 并且为 nil

使用调试器检查 _graphHostView 是否为 nil。

一个工作 html 的例子:

NSString *styledHTML = [NSString stringWithFormat:@"<html> \n"
                                "<head> \n"
                                "<style type=\"text/css\"> \n"
                                "body font-family: \"%@\"; font-size: %@;\n"
                                "background-color:#EEEEEE;\n"
                                "</style> \n"
                                "</head> \n"
                                "<body bgcolor =0xEEEEEE >%@</body> \n"
                                "</html>", @"Museo Sans", [NSNumber numberWithInt:12], helpResponse.Content];


[contentView loadHTMLString:styledHTML baseURL:nil];

NSString 也可能过度使用引号 ("")

【讨论】:

以上是关于如何从 Xcode for IOS 上的可编辑字符串加载 HTML?的主要内容,如果未能解决你的问题,请参考以下文章

CanvasCamera for iOS PhoneGap / Cordova

Xcode从入门到精通 —— iOS项目模版

xCode 4 项目模板中的可选框架

使用 swift 3 Xcode 8.2.1 在 iOS 上运行预构建的可执行文件

如何在 Xcode 5 for iOS 中保存和加载图像?

xCode ios 如何将可变数组写入桌面上的文件?