iOS组件化使用JLRoutes示例

前言:看到很多人写的文章几乎都是不同APP跳转,并没有关于组件化使用的示例。应用内跳转对于初学的人也找不到方向,所以写了个小demo。

步骤:

  • 1.编辑podfile,pod 'JLRoutes',然后pod install 或下载直接拖入工程
  • 2.注册
// JLRoutes本质可以理解为:保存一个全局的Map,key是url,value是对应的block 下列方法相当于程序运行加到map中数据
+ (void)load{
  
    [[JLRoutes routesForScheme:@"nice"] addRoute:@"one" handler:^BOOL(NSDictionary<NSString *,id> * _Nonnull parameters) {
      
        OneViewController *oneVc = [[OneViewController alloc] init];
        UINavigationController *nav = parameters[@"nav"];
        if (nav) {
             [nav pushViewController:oneVc animated:YES];
        }else{
            // 真实开发是根据情况设置,一般都是保存全局导航,跳转参数未传nav值时,取值跳转
            [[UIApplication sharedApplication].keyWindow.rootViewController presentViewController:oneVc animated:YES completion:^{
                
            }];
        }
       
        return YES;
    }];
}
  • 3.点击跳转
- (IBAction)jumpOneVc:(id)sender {
    
    // 点击通过JLRoutes跳转  通过JLRoutes跳转可以解耦,在正式app中一般都是分模块开发 比较方便
    [[JLRoutes routesForScheme:@"nice"] routeURL:[NSURL URLWithString:@"one"] withParameters:@{@"nav":self.navigationController}];
}

基本的入门demo点此下载

后记:这样就能在单个模块进行跳转,不需要引入控制器的头文件,耦合性很小。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,654评论 4 61
  • 0329 现在真的是个信息爆炸的时代,每个人或主动或被动(绝大多数几乎都是被动的)被各种各样的信息包围着。意识到这...
    娜天同意阅读 299评论 0 0
  • 尽管上班很累,到了深夜很想睡觉,但也不会去上床睡觉。只有深夜里,这才是属于我的时间。不是因为我想做夜猫子。而是我想...
    史力奇很好阅读 469评论 0 0
  • 光视正窗 热不能寐 姑醒书栖 早行待车 其车久等 白云苍狗 甚怪疑今
    凉皮君啊阅读 203评论 0 0

友情链接更多精彩内容