美文网首页
iOS开发中路由跳转之target open

iOS开发中路由跳转之target open

作者: 梁森的简书 | 来源:发表于2021-08-03 12:08 被阅读0次

    注册到路由表中的VC默认是使用target open的方式进行跳转。
    通过URL找到对应的VC后将URL中参数、URL、回调(这三个属性是通过关联对象写在了VC的extension中)赋值给目标VC,然后进行跳转。
    跳转一般分为push和present,跳转的方式也是通过VC的一个属性(同样是关联对象)来确定。
    代码

    //target open
            if targetClass is UIViewController.Type{
                var targetObj:UIViewController? = nil
                if let cls = targetClass as? HYRoutable.Type {
                    targetObj = cls.initWithRouterParams(combineParams)
                }else {
                    targetObj=(targetClass as! UIViewController.Type).init()
                }
                targetObj!.routerParams = combineParams
                targetObj!.routerURL = url
                targetObj!.routerCompletion = completion
                //pagemode
                return targetObj!.pageOpenMode.open(target: targetObj!)
            }
    

    相关文章

      网友评论

          本文标题:iOS开发中路由跳转之target open

          本文链接:https://www.haomeiwen.com/subject/bnzsvltx.html