本文主要記錄了使用Swift打包帶界面的framework的步驟 需求:打包一個framework提供其他應用植入??梢詫崿F跳轉(push或PResent)到framework的界面,然后再把拿到的數據返回到主界面。 準備階段
使用Swift寫好一個界面,運行測試成功后,留著備用(不建議使用xib,建議使用純代碼搭建界面) – 記得在需要外界引用的類用public修飾。如果涉及到圖片,先新建一個文件夾,把界面需要到的所有圖片放到里面。然后修改文件夾后綴名 加上”.bundle”將bundle包放在項目中,加載圖片時,使用 userBGView.image = UIImage.init(name:”img.bundle/input_bg”) 這樣的格式加載圖片 開始打包 framework 1 新建工程,選擇framework5 把之前寫好的界面里面的所有圖片加載方式加上 “xxx(項目名稱).framework”前綴(這一步驟很重要,不然圖片會加載失敗) 之前是: userBGView.image = UIImage.init(named:”img.bundle/input_bg”) 修改成:userBGView.image = UIImage.init(name:”KyyLoinView.framework/img.bundle/input_bg”) 6 選擇 Eidit Scheme – Run – Build Configuration 根據需求編譯所需的 framework格式,一般都是兩種 : debug – 模擬器 或者 release – 真機 7 選擇完畢后,command + B 編譯,然后會看到Products 中的framework變成黑色了,右鍵點擊 show in finder,可以直接拿到framework使用
到這里,整個制作 framework的過程就全部完成了
下面,簡單介紹一下怎么使用 1 打開你需要導入的framework項目,把之前制作好的framework復制到這個項目的文件中 2 在這個項目的Target中,點擊General – Embedded Binaries 點擊 + 號,然后點擊 “Add Other …”,找到你剛才復制framework的目錄中,選擇framework 然后你會在 Embedded Binaries 和 Linked Framework Library 中看到這個 framework
3 點擊 Target – Build Phases 中的Copy Bundle Resource,點擊 + 號,選擇你的framework
ok, 到這里,已經加載 framework完畢了,編譯試試 然后直接import引用framework , 之后就可以直接使用之前public出來的類了。
遇到坑點
使用xib 解決方法:放棄使用xib搭建界面,使用純代碼。
加載framework的時候無法引用public的類 解決方法:在制作framework的時候,記得“第3步”把所需要引用的類拖拽到public中去
圖片加載不出來 解決方法:記得在加載圖片時候,加上“xxx.framework/”的前綴。
其他參考資料:
http://www.cnblogs.com/yajunLi/p/5987687.html新聞熱點
疑難解答