测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可证 | MIT |
发布最后发布 | 2017年1月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Shai Mishali 维护。
SMWebView 是一个围绕 UIWebView 的令人愉悦、轻量级的 Swift 封装,它允许您利用闭包和链式调用的力量。当然——摆脱那些讨厌的、糟糕的代理!;-)
您可以使用 Storyboard 或 SMWebView 的静态方法来创建一个新的 UIWebView,而不是分配一个新的 UIWebView 并分配一个代理给它。
使用 Storyboard 设置和我们在 SMWebView Outlet 上调用 loadURL
/ loadHTML
一样简单,这会将所有这些闭包链式调用的魔法直接带到您的指尖:)
@IBOutlet weak fileprivate var webView: SMWebView!
...
// Basic Implementation
webView
.loadURL(URL(string: "https://github.com/freak4pc")!)
.didCompleteLoading { webView in
print("Finished loading entire webpage")
}
// All Options
webView
.loadURL(URL(string: "https://github.com/freak4pc")!)
.didStartLoading { webView in
print("Started loading \(webView.request?.url?.absoluteString)")
}
.didFinishLoading { webView in
print("Finished loading \(webView.request?.url?.absoluteString)")
}
.didFailLoading { webView, error in
print("Failed loading \(error)")
}
.didCompleteLoading { webView in
print("Finished loading entire webpage")
}
.shouldStartLoading { webView, request, type in
return true
}
SMWebView 允许您通过单个语句配置整个 SMWebView,然后设置框架并将其添加到视图层次结构,如下所示
let webView = SMWebView
.loadURL(URL(string: "https://github.com/freak4pc")!)
.didCompleteLoading { webView in
print("Finished loading URL: \(webView.request?.url?.absoluteString)")
}
webView.frame = UIScreen.main.bounds
self.view.addSubview(webView)
显然,Storyboard 示例中的所有其他选项在这里都适用。
SMWebView 适用于 CocoaPods。要安装它,请将以下行添加到您的 Podfile 中
pod 'SMWebView'
Shai Mishali (freak4pc)
SMWebView 可在 MIT 许可证下使用。有关更多信息,请参阅 LICENSE 文件。