美文网首页
模块拆分(三)

模块拆分(三)

作者: S_Lyu | 来源:发表于2020-04-23 19:59 被阅读0次

    第三步:使用bundle

    1.在CommonMacros.h宏定义快捷方式

    快捷取出指定bundle

    image.png

    2.使用

    • 使用xib时如下:


      image.png
    • 使用图片时如下:


      image.png

    3.方法糖(避坑)

    • 这里为UINib扩充了+ (UINib *)xh_nibWithNibName:(NSString *)name方法,用来从全局bundle中寻找指定nib
      注:这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应nib
      image.png
    • 这里为UIImage扩充了+ (UIImage *)imageNamedFromAutomaticBundle:(NSString *)name方法,用来从全局全局bundle中寻找指定图片(自动确定2x/3x)
      注:同上(这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应image)
      image.png
    • 这里为UIView扩充了+ (instancetype)XH_loadViewFromXib方法,用来从全局bundle中寻找指定xib
      注:同上(这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应nib)
      image.png
    • 这里重写了XHBaseViewController的构造函数- (instancetype)init用来在初始化前,从全局bundle中寻找自身名字匹配的控制器

    注:同上(这里涉及到长度为"bundle数量"(目前为5)的循环,为避免性能问题,尽量精准的从bundle中取出对应nib)

    image.png
    • 糖的用法:


      image.png

    相关文章

      网友评论

          本文标题:模块拆分(三)

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