swift 获取html链接,Swift 3 webView本地HTML(示例代码)

我需要将本地HTML,CSS和JS加载到iOS应用程序中,以使我的老板高兴。我正在使用Xcode 8.3.1和Swift 3.我创建了一个新项目,在我的Main.storyboard中放置了一个WebView

其他StackOverflow资源帮助我做到这一点:

@IBOutlet weak var webView: UIWebView!

override func viewDidLoad() {

super.viewDidLoad()

// Do any additional setup after loading the view, typically from a nib.

let urlpath = Bundle.main.path(forResource: "index", ofType: "html");

let requesturl = URL(string: urlpath!)

let request = URLRequest(url: requesturl!)

webView.mainFrame.load(request)

}

我收到此错误:

“UIWebView”类型的值没有成员“mainFrame”

当我删除mainFrame时,它说我错过了一个mimeType。有人可以帮忙吗?我显然是斯威夫特的菜鸟。

答案

mainFrame来自WebView类,仅适用于macOS。

由于您使用的是UIWebView,因此需要使用webView.loadRequest。

您的网址也有问题。要么使用URL(fileURLWithPath:)从路径字符串创建URL,或者更好的是,使用Bundle.main.url(forResource:withExtension:)并直接获取URL。

您可能还想使用WKWebView而不是UIWebView。它具有更多功能,可能对您的需求更有用。

另一答案

斯威夫特5

let path = Bundle.main.path(forResource: "temp", ofType: "html")!

//reading

var text = try! String.init(contentsOfFile: path, encoding: String.Encoding.utf8)

text = text.replacingOccurrences(of: "${contents}", with: contents)

// load string

let bundleURL = URL.init(string: path)

webView.loadHTMLString(text, baseURL: bundleURL)

完成了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WKWebView Swift3.0 一款IOS8以后的web加载神器 https://github.com/XFIOSXiaoFeng/SwiftWkWebView 别说了!!!!快上车 WKWebView 支持POST请求 加载本地页面 直加载网页 JS交互 集成支付宝/微信URL支付功能 仿微信返回按钮 感谢大家的支持 OC版本将不再持续更新 业余爱好 QQ群:384089763 OC版本遗址:https://github.com/XFIOSXiaoFeng/WKWebView NO1 首先得允许访问HTTP链 HTTPS权限: NSAppTransportSecurity NSAllowsArbitraryLoads API介绍 API属性 //设置navigationBarColor的颜色 var navigationBarColor: UIColor? //是否隐藏进度条 var isProgressHidden = false //注册MessageHandler 需要实现代理方法 var addJavaScriptAry = [String]() //执行JS 需要实现代理方法 var javaScript = String() //设置代理 weak var delegate : WKWebViewDelegate? //右边按钮的值 ItemTag:区分当前按钮 //实现代理方法才能调用点击事件 var rightBarButtonItemTitle : String? var rightBarButtonItemImage : String? var rightBarButtonItemImageH : String? var rightBarButtonItemTag : String? API方法 /// 普通URL加载方式 func load_UrlSting(string:String!) {} /// 加载本地HTML func load_HTMLSting(string:String!) {} /// POST方式请求加载 func load_POSTUrlSting(string:String!,postString:String!) {} /// 添加右侧按钮 func add_rightBarButtonItem(title:String?,image:String?,imageH:String?,itemTag:String?) {} /// 执行JavaScript代码 func run_JavaScript(script:String?) {} API代理方法 //点击右边按钮执行方法 @objc optional func didSelectRightItem(webView:WKWebView,itemTag:String) //注册JS执行代码 @objc optional func didAddScriptMessage(webView:WKWebView,message:WKScriptMessage) //页面执行JS方法 @objc optional func didRunJavaScript(webView:WKWebView,result:Any?,error:Error?)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值