美文网首页
框架资源应该放哪儿?

框架资源应该放哪儿?

作者: br_MorningStar | 来源:发表于2017-12-16 20:43 被阅读9次

    放在这个目录里面

    image.png
    之后在Spec文件中打开接在资源注释
    image.png
    之后在pod install 就能引用进来了
    image.png
    那在框架中怎么用这些图片呢?

    如果你是在XIB中用这些图片的话,打开项目中的Products文件夹 选中.APP文件

    showinFinder, -> 显示报内容-->Frameworks-->MainModule(框架名).framework
    这里面有我们的Xib文件,还有一个MainModule(框架名).bundle我们的资源文件都在这儿

    所以说Xib和资源在同一个文件夹下面 image.png
    运行项目就能看到了!
    框架代码的方式用资源
     let currentBundle = Bundle(for: self.classForCoder)
            
            
            //这个方法是直接在currentBundle目录下面的文件才能找到 !因为我们的图片在MainModule.framework/MainModule.bundle/里面所以用下面的方法,而且图片名称必须写全tabbar_bg@3x.png
    //        currentBundle.path(forResource: "tabbar_bg", ofType: "png")
            
           let imagePath = currentBundle.path(forResource: "tabbar_bg@3x.png", ofType: nil, inDirectory: "MainModule.bundle")
            
    //        backgroundImage = UIImage(named: "tabbar_bg")
            backgroundImage = UIImage(contentsOfFile: imagePath!)
    
    主要注意几个点

    1.因为这框架依赖别的私有框架Base/Extension
    git push 之前 这是spec的Version,并且 pod lib lint 看看有没有问题! 可能少SwiftVersion文件!修复之后在add . c-m "" 再push 不然 你push 之后在提交Spec的时候少SwiftVersion文件修复之后多了一个SwiftVersion文件 还得比较 删除Tag 再去设置Tag

    1. 删除Tag重新设置tag(比如当前0.1.0tag下载的代码是错的!这时候升级版本可以解决!!!但是别不知道0.1.0版本有错误,所以需要Fix)
      先修复GUB!之后删除本地tag,再删除远程的tag, push代码 本地打tag! push --tag
      先删除tag(本地) git tag -d 0.1.0 在删除远程tag git push origin : 0.1.0

    3.Spec 文件验证的时候因为当前框架依赖别的私有框架回报警告可以用'pod lib lint --allow-warnings'

    4.提交Spec文件的时候如果出现资源匹配不到的错误!但是远程文件都没问题,本地也没问题
    清除缓存 重新来一遍'pod cache clean —all '

    相关文章

      网友评论

          本文标题:框架资源应该放哪儿?

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