在簡單的app中,可能只會用到工程,可是項目越大,越複雜,就會須要拆分項目,將各個功能拆散到各個工程中。 xcode
能夠使用worksapce來管理工程集合。 app
可是資源文件卻很差管理,由於xcode默認只能添加本身工程內,或者子工程的資源文件到target中。 ui
若是是平級的工程,怎麼添加呢?能夠使用bundle this
bundle雖然是os x中的資源類型,可是是兼容iOS的 spa
咱們能夠先建立一個os x的bundle,而後修改其編譯類型爲iOS的 code
調整base sdk便可 ip
而後添加資源文件(png,xib,storyboard等)到此bundle中。 資源
雖然資源文件打包到了bundle中,可是此bundle沒法加入到其餘工程編譯的target中 get
咱們須要修改scheme it
Edit Scheme-》Build-》Add this bundle
這樣在編譯其餘target的時候就會自動編譯此bundle了,可是這個bundle卻不會打包到app中
咱們還須要添加run script到build parses中
build parses-》add run script(點+號)
cp -R -f $BUILT_PRODUCTS_DIR/MyBundleName.bundle $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/
若是有多個bundle
cp -R -f $BUILT_PRODUCTS_DIR/*.bundle $BUILT_PRODUCTS_DIR/$CONTENTS_FOLDER_PATH/
這樣bundle就能夠正常打包到app中了
在使用的時候須要指定bundle
[UIImage imageNamed:@"yourbundlefile.bundle/imageInBundle"];