特性 • 使用 • 翻译 • 自定义 • 安装 • 许可协议
显示一个包含您应用程序中使用的所有许可证的屏幕可能是难以维护的。OpenSourceController就是为了解决这一问题而构建的。OpenSourceController是一个简单的解析器,用于显示您应用程序中使用的许可证。
特性
- 显示使用在您应用程序中的许可证的tableView
- 从URL下载许可证
要求
- Xcode 11
- iOS 9.0+ 目标部署
- Swift 3、Swift 4或Swift 5.1的项目
使用
- 导入库
import OpenSourceController
- 显示控制器
// Create controller
let openSourceVC = OpenSourceController()
// Init with LicenceFile object
openSourceVC.licences = [LicenceFile(title: "FacebookImagePicker",
url: "https://raw.githubusercontent.com/terflogag/FacebookImagePicker/master/LICENSE"),
LicenceFile(title: "JSQMessagesViewController",
url: "https://raw.githubusercontent.com/jessesquires/JSQMessagesViewController/develop/LICENSE")]
// Present controller
openSourceVC.presentOpenSourceController(from: self)
// OR push the controller if the source controller is embeded in navigation controller
openSourceVC.pushOpenSourceController(from: self)
使用SwiftUI
struct OpenSourceView: UIViewControllerRepresentable {
@available(iOS 13, *)
public func updateUIViewController(_ uiViewController: OpenSourceViewController, context: UIViewControllerRepresentableContext<OpenSourceView>) {
//
}
@available(iOS 13, *)
public func makeUIViewController(context: UIViewControllerRepresentableContext<OpenSourceView>) -> OpenSourceViewController {
let openSourceVC = OpenSourceViewController(licences:
[LicenceFile(title: "FacebookImagePicker",
url: "https://raw.githubusercontent.com/terflogag/FacebookImagePicker/master/LICENSE"),
LicenceFile(title: "JSQMessagesViewController",
url: "https://raw.githubusercontent.com/jessesquires/JSQMessagesViewController/develop/LICENSE")],
showCloseButton: true,
configuration: OpenSourceControllerConfig(),
licenceLoader: LicenceLoader())
return openSourceVC
}
}
自定义
您可以应用一些自定义设置。为了做到这一点,您可以使用OpenSourceControllerConfig结构,如下所示
// Navigation bar title
openSourceVC.config.title = "MyCustomTitle"
// Close button color
openSourceVC.config.uiConfig.closeButtonColor = UIColor.white
// BackgroundColor
openSourceVC.config.uiConfig.backgroundColor = UIColor.red.withAlphaComponent(0.6)
// Licence text color
openSourceVC.config.uiConfig.licenceTextColor = UIColor.white
// Navigation bar title color
openSourceVC.config.uiConfig.titleColor = UIColor.white
// Licence cell background color
openSourceVC.config.uiConfig.licenceBackgroundColor = UIColor.red
// Verbose mode
openSourceVC.config.verbose = true
翻译
OpenSourceController 目前使用英文编写。如果您需要翻译权限弹出窗口(或者任何东西),只需在您的本地化文件中添加此行
"Unable to load this licence." = "<your_translation>";
安装
-
要将OpenSourceController集成到您的Xcode项目中,使用 Swift Packet Manager,在Xcode中指定此URL:
https://github.com/floriangbh/OpenSourceController
-
要将OpenSourceController集成到您的Xcode项目中,使用 CocoaPods,在您的Podfile中指定它
pod "OpenSourceController", '~> 3.0.0' # Swift 4.2 Version
pod "OpenSourceController", '~> 2.0' # Swift 4.0 Version
pod "OpenSourceController", '~> 1.0.8' # Swift 3.1 version
- 要将OpenSourceController集成到您的Xcode项目中,使用 Carthage,在您的Cartfile中指定它
github "floriangbh/OpenSourceController" ~> 3.0.0 # Swift 4.2 version
github "floriangbh/OpenSourceController" ~> 2.0 # Swift 4.0 version
github "floriangbh/OpenSourceController" ~> 1.0.8 # Swift 3.1 version
作者
Florian Gabach,[email protected]
许可
OpenSourceController 在 MIT 许可证下可用。