iOS,Xcode7 制作Framework,含资源和界面
Xcode7 制作Framework
本文通过Demo方式介绍1)将含bundle和存代码编写界面打包进framework;2)将storyboard +assets.xcassets打包。
(一)创建一个Framework工程;
本文创建的是动态库,如果需要改成静态库,只需要在设置中Mach-O Type 改为"Static Library"
1,打开Xcode,点击File\New\Project,选择iOS\Framework and Library\Cocoa Touch Framework新建一个静态库工程.

2,因为含界面,需要导入UIKit的头文件;
点击BuildPhases,展开Link Binary with Libraries这一部分,点击+添加一个新的framework,找到UIKit.framework,点击add添加进来。

3,编写界面;完成接口;
我这边只是写了个简单的小界面,通过在这个小界面上放一个UIImageView,其图片取自bundle;
ViviSDKVC作为公用接口;需要将其头文件放入public header中。
方法是在Xcode的Build Phases界面,选择Editor\Add Build Phase\Add Copy Headers Build Phase。
Note:如果你发现按上面找到的菜单项是灰色的(不可点击的),点击下方Build Phases界面的白色区域来获取Xcode的应用焦点,然后重新试一下。

4,建立宿主工程;将Framework 和bundle都copy至项目中,把Framework同时添加到‘Embedded Binaries’中;
使用静态库的话,就可以把Framework从‘Embedded Binaries’中删除了。

5,运行; 初步的小 Demo 如下;

(二)建立工程依赖
新建workspace ,通过 Add Files to "workspace name"将宿主和framework工程的XXX.xcodeproj 文件加入worksapce中;

(三)Storyboard++Assets.xcassets 打包
1,将已经写好的storyboard和图片管理器Assets.xcassets加入工程中;

2,添加并设置bundle
1)点击图片中位置添加bundle;
2)选择OS X 的Bundle;
3)修改并选择 Build Settings -> Architectures -> Base SDK 改为Latest iOS

4)将资源文件加入bundle中;

5,将ViviResources bundle编译,加入宿主工程,并运行;

参考在:
http://www.cnblogs.com/developer-qin/p/5691008.html
iOS,Xcode7 制作Framework,含资源和界面的更多相关文章
- iOS XCode7制作.Framework动态库和.a静态库的总结
一.开发SDK时的支持情况: OC语言制作动态库时,支持iOS8+:OC语言制作静态库,支持iOS7+. Swift语言制作动态库时,支持iOS8+;Swift不支持静态库. 对于SDK来说,支持情况 ...
- iOS 在制作framework时候对aggregate的配置
# Sets the target folders and the final framework product.# 如果工程名称和Framework的Target名称不一样的话,要自定义FMKNA ...
- iOS:Xcode7下创建 .a静态库 和 .framework静态库
Xcode7 中创建静态库:.a 和 .framework 一.简单介绍 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的分类 根据源代码的公开情况,库可以分为2种类型 (1)开 ...
- Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面
Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面 关于欢迎界面 很多App第一次启动都会有一个欢迎界面,欢迎界面往往决定这用户对App的第一映像,所以欢 ...
- IOS7开发~Xcode5制作framework
一.Framework 简介(Introduction to Framework Programming Guide) Mac OS X 扩展了 framework 的功能,让我们能够利用它来共享代码 ...
- IOS7 ~ Xcode5 制作 framework
一.Framework 简介(Introduction to Framework Programming Guide) Mac OS X 扩展了 framework 的功能,让我们能够利用它来共享代码 ...
- iOS使用Security.framework进行RSA 加密解密签名和验证签名
iOS 上 Security.framework为我们提供了安全方面相关的api: Security框架提供的RSA在iOS上使用的一些小结 支持的RSA keySize 大小有:512,768,10 ...
- 利用Bootstrap框架制作查询页面的界面
UI设计实战篇——利用Bootstrap框架制作查询页面的界面 Bootstrap框架是一个前端UI设计的框架,它提供了统一的UI界面,简化了设计界面UI的过程(缺点是定制了界面,调整的余地不是太 ...
- 制作framework&静态库
http://blog.csdn.net/justinjing0612/article/details/7880712 (制作framework) http://blog.sina.com.c ...
随机推荐
- ffmpeg命令行
ubuntu下简单安装ffmpeg sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-nextsudo apt-get update sudo a ...
- Android课程---Android Studio的一些小技巧
APK瘦身 在Android Studio中我们可以开启混淆,和自动删除没有Resources文件,来达到给APP瘦身的目的,这对于一些维护很久的老项目比较有用,里面有很多无效的Resource, 删 ...
- IOS第18天(7,CAKeyframeAnimation-图标抖动)
*** #import "HMViewController.h" #define angle2radian(x) ((x) / 180.0 * M_PI) @interface H ...
- centos同步北京时间
yum install ntp ntpdate #ntpdate -u 202.120.2.101 //写入硬件 #hwclock -w 以下是国内常见的NTP服务器 ntp.sjtu.edu.cn ...
- Android Glide数据更新及内存缓存、硬盘缓存清理
[转] 原文 Android Glide数据更新及内存缓存.硬盘缓存清理 Android的Glide在加载图片时候内部默 ...
- FreeMarker的教程
copy自http://demojava.iteye.com/blog/800204 以下内容全部是网上收集: FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主 ...
- xampp使用phpunit
1.将xampp/php的pear文件夹里面的phpunit文件夹复制到htdocs目录下 2.复制xampp/php的phpunit.bat到需要测试的目录 3.使用cmd命令切换至phpunit. ...
- JavaScript单元测试框架-Jasmine
Jasmine的开发团队来自PivotalLabs,他们一开始开发的JavaScript测试框架是JsUnit,来源于著名的JAVA测试框架JUnit.JsUnit是xUnit的JavaScript实 ...
- LeetCode Maximum Size Subarray Sum Equals k
原题链接在这里:https://leetcode.com/problems/maximum-size-subarray-sum-equals-k/ 题目: Given an array nums an ...
- 《奥威Power-BI销售计划填报 》精彩回顾
我们经常遇到这样的问题:业务单据是来自ERP系统,销售计划是EXCEL做的,想把两者整合在一起做分析,怎么办? 单据大,导出EXCEL太费劲,也很难分析到历史数据,但又不能动ERP系统 (自己也不会改 ...