测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最新发布 | 2017年1月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Chijioke Ndubisi 维护。
CJNibSegue 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中
pod "CJNibSegue"
创建一个符合 CJNibSegueIdentifiable
协议的 Enum - 由 RawRepresentable
和 Hashable
组成的协议
// Step 1
// Making the enum a string makes the it conform to RawRepresentable and Hashable
enum ChatSegueIdentifiers: String, CJNibSegueIdentifiable {
case chat
case call
}
源视图控制器必须
CJNibViewController
并实现nibSegue: [NibSegue]?
以返回此源视图控制器所有可能的 segue// Comform to CJNibViewController
extension SourceViewController: CJNibViewController {
var nibSegue: [NibSegue]? {
return [
{
let destination = ChatViewController()
return CJNibSegue(identifier: ChatSegueIdentifiers.chat,
source: self,
destination: destination)
}()// call function immediately to return a NibSegue
]
}
(Optional)
func prepare(for nibSegue: NibSegue, sender: Any?) {
if let segue = nibSegue as? CJNibSegue<SegueIdenifiers, FirstViewController, SecondViewController>
{
switch segue.nibIdentiifer {
case .chat:
// set up detination
}
}
}
}
调用 performSegue(withIdentifier: .chat, sender: cell)
所有贡献都可通过 github issues 进行
Chijioke Ndubisi, [email protected]
CJNibSegue 在 MIT 许可下可用。查看 LICENSE 文件获取更多信息。