Xcode UI界面调试神器

更新:最近发现了 腾讯 QMUI 团队开源 iOS UI 调试软件-Lookin;良心之作,真的好用且完全免费。Xcode调试,刚刚滴!!!
官网介绍地址

2018.11.8最新更新:injectionIII使用,Xcode10使用无效,搜了GitHub:
InjectionIII的GitHub,给出了解决办法: 下载InjectionX链接

 for Xcode 10:
//Swift:
#if DEBUG
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection10.bundle")?.load()
//for tvOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection10.bundle")?.load()
//Or for macOS:
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection10.bundle")?.load()
//OC :
// for iOS
[[NSBundle bundleWithPath:@"/Applications/InjectionX.app/Contents/Resources/iOSInjection.bundle"] load];
// for tvOS
[[NSBundle bundleWithPath:@"/Applications/InjectionX.app/Contents/Resources/tvOSInjection.bundle"] load];
// for masOS
[[NSBundle bundleWithPath:@"/Applications/InjectionX.app/Contents/Resources/macOSInjection.bundle"] load];
 #endif

#前言:一直羡慕安卓开发:这边改代码,那边瞬间见效果;Xcode还需要编译、项目跑起来,模拟器才能看到效果。有时候XCode编译超慢,一等就是几分钟,实在急死人了。Xcode8以前可以安装插件Injection for Xcode 实现,但是Xcode8以后不能随心所欲的装插件了。现在好啦,不使用插件也可以实现UI即时调试了。

[injection链接](http://johnholdsworth.com/injection.html)

[Mac App Store](https://itunes.apple.com/us/app/injectioniii/id1380446739?ls=1&mt=12)
同时献上网上大牛对这个开发工具的实现原理的分析:《Injection:iOS热重载背后的黑魔法》
[链接地址](https://mp.weixin.qq.com/s/hFnHdOP6pmIwzZck-zXE8g)

使用:
#一、OC:
##1.在我们的项目中- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法加入如下代码:
>if DEBUG
// for iOS
 [[NSBundle  bundleWithPath:@"/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle"] load];
// for tvOS
[[NSBundle  bundleWithPath:@"/Applications/InjectionIII.app/Contents/Resources/tvOSInjection.bundle"] load];
// for masOS
[[NSBundle  bundleWithPath:@"/Applications/InjectionIII.app/Contents/Resources/macOSInjection.bundle"] load];
>endif

注意:if DEBUG 和endif前面少个#(因为加上#就变成黑字体了,也不显示#)
#2.打开Mac APP injectionIII,  点击Mac 桌面的injectionIII 图标-> Open Recent -> 选择你的项目 ,最后再选择FileWatcher(有对号即可);
##3.在任意继承自OC的类中加入如下需要跟新的UI代码,在我们修改了对应文件按下COMMAND + S即可看到UI reload了;

>-(void)injected{
 NSLog(@"I've been injected: %@", self);
  self.view.backgroundColor = [UIColor  goldColor];
}

#二:Swift:

>if DEBUG
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/iOSInjection.bundle")?.load()
*//for tvOS:*
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/tvOSInjection.bundle")?.load()
*//Or for macOS:*
Bundle(path: "/Applications/InjectionIII.app/Contents/Resources/macOSInjection.bundle")?.load()
endif

执行快捷键: COMMAND + S

@objc func injected(){

 print("I've been injected: \(self)")

}

不过这只是不run XCode情况下,预览UI界面效果,最后要想项目重运行达到效果,还需要把注入的代码写粘贴复制在真实需要改变的地方。
[injectionIIIDemo地址](https://github.com/Dxc123/injectionIIIDemo.git)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明先生_x阅读 15,967评论 3 119
  • 每个人都有自己的想法和意见,你一言我一语会有不同结果,统一目的,才能达成结果。
    孙倩倩Rela阅读 158评论 0 0
  • 尊敬的陈董: 您好!我是筹办新品发布会的xxx。 如您所知,公司的新品媒体发布会计划于11月7日举行,但苹果公司宣...
    晓蕊阅读 178评论 0 0
  • 很久之前想到过死亡这个字眼,不知什么时候突然地害怕。因为不知道死后这个世界会变成什么样子,尤其是没有自己的世界。有...
    南宫柳阅读 465评论 2 1
  • 一、定了很多专栏怎么舍取 T型组合>精专练习一门>看精选信息>看书>看朋友圈 给自己看的知识分类: 1.提高人生眼...
    唐花花阅读 104评论 0 0