组件化xib问题

之前公司一直用本地组件化,现在迭代添加新功能打算用远程组件,然而并没有那么理想,刚开始就碰到xib问题,首先xib 图片 资源信息都是在当前组件的Resources 中,加载方式也不同

+(instancetype)creatAllreadAlterView{
   
    NSBundle *bundle = [NSBundle bundleForClass:[self class]];
    NSString *path = [bundle pathForResource:@"组件的名字" ofType:@"bundle"];
    NSBundle *bundel = [NSBundle bundleWithPath:path];
    return [[bundel loadNibNamed:@"xib名字" owner:self options:nil] lastObject];
}

这只是其中的一种方式 ,当然还有另一种方式,通过url加载bundle,这时候我碰到了一个

(not yet load)

what ? ? ?

根据错误提示找到项目的包文件发现 并没有我创建的nib文件(xib文件名字),自己通过手动xib转nib文件,终于加载成功了,一拖里面的子控件,又出问题了,一运行就崩溃,说是找不到key,一看我就知道 拖动xib子控件的名字 没有映射到xib中去,所有的子控件不能用,我要你何用,这个方法不可行
于是我又找别的问题,由于是在resource中,那问题就出现在组件上了,我觉得很可能是设置问题,找到了podspec文件

s.resource_bundles = {
     'ProfileModule' => ['ProfileModule/Assets/*']
  }

加载bundle是这么加载的,直接就是* 加载所有资源,但是我的xib并没有加载,抱着试试的心态改成

'ProfileModule' => ['ProfileModule/Assets/*.{png,storyboard,xib,xcassets}']

没想到还成功了,花了2天的时间就解决个这个,唉

你可能感兴趣的:(组件化xib问题)