iOS開發(fā)-Bundle文件中的nib(xib 編譯成 nib)

xib與nib

開發(fā)中适滓,我們在使用他人的庫文件時(shí)敦迄,時(shí)常會(huì)遇到使用Bundle資源文件的情況。當(dāng)靜態(tài)庫項(xiàng)目中存在xib文件時(shí)凭迹,放入Bundle文件中的xib需要編譯成nib文件罚屋,因?yàn)锽undle文件放入項(xiàng)目中后是不會(huì)編譯的,如果直接將xib放入Bundle文件中嗅绸,啟動(dòng)項(xiàng)目后會(huì)出現(xiàn)報(bào)一個(gè)加載nib資源文件失敗的問題沿后。因此,這篇文章的價(jià)值就體現(xiàn)出來了朽砰,下午特意制作了一個(gè)shell腳本來 將一個(gè)xib 編譯成 對應(yīng)的 nib 文件 和 將一個(gè)文件夾中xib文件 編譯成 對應(yīng)的 nib文件尖滚。

效果截圖

F8BB7E20-5D05-4AFC-B30D-B15DCA6706C2.png

單個(gè)xib文件快速制作

終端格式

$1 要生成的nib文件名 如TableViewCell.nib
$2 要編譯的xib文件路徑 如TableViewCell.xib

ibtool --errors --warnings --output-format human-readable-text --compile ibtool --errors --warnings --output-format human-readable-text --compile $1 $2

e.g.:

8E2BE64C-BC89-40A7-A6CA-ED46CCD7D018.png

Bundle制作

網(wǎng)上文章較多,這里給一個(gè)鏈接iOS 制作Bundle

腳本分享

nib.sh腳本

說明:

使用方法:
1.將xib文件或包含xib文件的文件夾 以及 nib.sh 放在同一個(gè)目錄下瞧柔;
2.cd 到該目錄下
3.終端執(zhí)行命令 bash nib.sh xib文件或文件夾

報(bào)錯(cuò):
xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' 漆弄。。造锅。

解決該問題只需要設(shè)置xcode中的命令行工具:打開Xcode -> 左上角Xcode -> Preference.. -> Locations -> Command Line Tools 選擇最新即可撼唾。

命令行工具
7E07A51A-9B2F-4F2A-ADC8-17165BE2DF82.png

#######nib.sh

#!/bin/bash

# 將xib編譯成nib文件
function transitionToNib(){
    ibtool --errors --warnings --output-format human-readable-text --compile ibtool --errors --warnings --output-format human-readable-text --compile $1 $2

}

#處理輸入的參數(shù) 并編譯成nib (/Users/zengchunjun/Desktop/selfStudy/xib-\>nib/TableViewCell.xib 分離出TableViewCell.xib 與 TableViewCell.nib)
function handlFile(){
    ORIGIN=$1
    echo $1

    XIBFILE=${ORIGIN##*/}
    echo "$XIBFILE xib文件"


    FILENAME="${ORIGIN%.*}"
    NIBFILEDIR=$FILENAME".nib"
    NIBFILE=${NIBFILEDIR##*/}

    echo "$FILENAME file名"
    echo "$NIBFILE nib文件"

    transitionToNib $NIBFILE $XIBFILE
}

#循環(huán)目錄,將每個(gè)xib編譯成nib
function scandir() {
    local cur_dir parent_dir workdir
    workdir=$1
    cd ${workdir}
    if [ ${workdir} = "/" ]
    then
        cur_dir=""
    else
        cur_dir=$(pwd)
    fi

    for dirlist in $(ls ${cur_dir})
    do
        if test -d ${dirlist};then
            cd ${dirlist}
            scandir ${cur_dir}/${dirlist}
            cd ..
        else
            echo "${cur_dir}/${dirlist} 子文件"

            handlFile ${cur_dir}/${dirlist}

        fi
    done
}


#判斷是否有輸入?yún)?shù) 需輸入一個(gè)xib文件 或 一個(gè)只包含xib的文件 注意哥蔚,xib文件名不能為空倒谷,否則不會(huì)被編譯成nib
if [ ! -n "$1" ] ;then
    echo "you have not input a xibfile or directory of xibfile!"
    return
else
    echo "the word you input is $1"
fi



#判斷是文件還是文件夾
if test -d $1
then

    echo "you input  a directory"

    scandir $1

    exit 1

elif test -f $1
then
    echo "you input a xibfile "

    handlFile $1
    
    exit 1
else
    echo "the Directory isn't exist which you input,pls input a new one!!"
    exit 1
fi


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市糙箍,隨后出現(xiàn)的幾起案子渤愁,更是在濱河造成了極大的恐慌,老刑警劉巖深夯,帶你破解...
    沈念sama閱讀 210,978評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件抖格,死亡現(xiàn)場離奇詭異诺苹,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)雹拄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門收奔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人滓玖,你說我怎么就攤上這事坪哄。” “怎么了势篡?”我有些...
    開封第一講書人閱讀 156,623評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵翩肌,是天一觀的道長。 經(jīng)常有香客問我殊霞,道長摧阅,這世上最難降的妖魔是什么汰蓉? 我笑而不...
    開封第一講書人閱讀 56,324評(píng)論 1 282
  • 正文 為了忘掉前任绷蹲,我火速辦了婚禮,結(jié)果婚禮上顾孽,老公的妹妹穿的比我還像新娘祝钢。我一直安慰自己,他們只是感情好若厚,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評(píng)論 5 384
  • 文/花漫 我一把揭開白布拦英。 她就那樣靜靜地躺著,像睡著了一般测秸。 火紅的嫁衣襯著肌膚如雪疤估。 梳的紋絲不亂的頭發(fā)上框仔,一...
    開封第一講書人閱讀 49,741評(píng)論 1 289
  • 那天庸娱,我揣著相機(jī)與錄音,去河邊找鬼俩垃。 笑死沈撞,一個(gè)胖子當(dāng)著我的面吹牛慷荔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播缠俺,決...
    沈念sama閱讀 38,892評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼显晶,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了壹士?” 一聲冷哼從身側(cè)響起磷雇,我...
    開封第一講書人閱讀 37,655評(píng)論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎躏救,沒想到半個(gè)月后倦春,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年睁本,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了尿庐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,569評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡呢堰,死狀恐怖抄瑟,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情枉疼,我是刑警寧澤皮假,帶...
    沈念sama閱讀 34,254評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站骂维,受9級(jí)特大地震影響惹资,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜航闺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評(píng)論 3 312
  • 文/蒙蒙 一褪测、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧潦刃,春花似錦侮措、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至胧洒,卻和暖如春畏吓,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背卫漫。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評(píng)論 1 264
  • 我被黑心中介騙來泰國打工菲饼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人汛兜。 一個(gè)月前我還...
    沈念sama閱讀 46,260評(píng)論 2 360
  • 正文 我出身青樓巴粪,卻偏偏與公主長得像,于是被迫代替她去往敵國和親粥谬。 傳聞我的和親對象是個(gè)殘疾皇子肛根,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容