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 ...
随机推荐
- Js navigator.onLine 获取设备是否可以上网、连接网络
http://zccst.iteye.com/blog/2194229 获取用户的联网状态 if (navigator && navigator.onLine === false) { ...
- WxInput模块则比较彻底的解决了这个问题
基于wxpython的GUI输入对话框2 在程序输入中,有时会要求同时改变多个参数值,而且类型也不尽相同, 这时TextEntryDialog就显得不适用了.WxInput模块则比较彻底的解决了这个问 ...
- Java接入图灵机器人,实现与机器人聊天
很多人都玩过微信,其中就有与机器人聊天的功能:
- Android课程---布局管理器
- Android课程---Android Studio简单设置
Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings-->Appearance-->Theme, ...
- loadrunner11.0 安装破解详解使用教程
loadrunner11.0 安装破解详解使用教程 来源:互联网 作者:佚名 时间:01-21 10:25:34 [大 中 小] 很多朋友下载了loadrunner11但不是很会使用,这里简单介绍下安 ...
- zepto源码--核心方法5(文本操作)--学习笔记
涉及到文本内容的主要有三个函数:html, text, val. 我们已经见过多次,一个函数多种用途的情况,今天这三个函数也不例外,既可以获取内容,也可以设置内容.判断条件就是有没有传入参数,如果没有 ...
- webstorm svn 报错
webstorm svn 报错Cannot run program "svn": CreateProcess error=2, The system cannot find ...
- swift2.0单例
import Foundation public class SwiftSingleton{ var name = "000" public static le ...
- 创建一个程序,从应用程序中随机添加N名参加歌唱比赛的同学,并随机对这N名同学的比赛按姓名的拼音先后顺序进行排序
public class Pint { /** * 姓名 */ public String name; /** * 年龄 */ public String age; public Pint(){ } ...