今天在看唐巧的书籍的时候,闲来无事,写一篇博客,也算是一种心得吧:
一、作用:用来分析UI各个页面之间的层级关系。
二、官网下载地址(30天免费试用):http://revealapp.com/ (下载下来的时候,把他直接拉倒应用程序栏,方便以后使用)
三、Reveal安装设置
下图是Reveal 的运行界面,其界面主要分为三部分
1.左边部分是整个界面的层级关系,在这里可以以树形层级的方式来查看全部界面元素。
2.中间部分是一个可视化的查看区域,用户可以在这里切换2D 和 3D的查看方式,这里看到的也是程序运行时的实时界面。
3.右边部分是控件的详细参数查看区域,当我们选中某一个具体的控件时,右边就可以显示出该控件的具体的参数列表,我们除了可以查看这些参数值是是否正确外,还可以尝试修改这些值。所有的修改都可以实时反映到中间的实时预览区域
Reveal 工具适合调试非Interface Builder创建的界面,Interface Builder 中创建的xib 和 StoryBoard 在企业中开发中并不是总能胜任
安装完后,就该配置了
用Reveal 连接模拟器调试:
1、打开命令窗口,在根目录下创建一个.lldbinit文件。输入下列命令,后回车
vim ~/.lldbinit2、回车后,输入下列代码:
command alias reveal_load_sim expr (void*)dlopen("/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2);command alias reveal_load_dev expr (void*)dlopen([(NSString*)[(NSBundle*)[NSBundle mainBundle] pathForResource:@"libReveal" ofType:@"dylib"] cStringUsingEncoding:0x4], 0x2);command alias reveal_start expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStart" object:nil];command alias reveal_stop expr (void)[(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStop" object:nil];以上是四句命令,命令的意思是,给lldb设置了4个别名,这四个别名的意义是:
reveal_load_sim:模拟器加载reveal时调用的动态链接库
reveal_load_dev:真机加载reveal时调用的动态链接库
reveal_start:启动reveal的调试功能
reveal_stop:关闭reveal的调试功能
在输入完这些命令后,在键盘上面 按下 Esc 键(ps:一定要按下),输入以下命令,按一下回车就保存并退出编辑模式了
:wq
3、在工程中配置reveal链接到模拟器
打开工程后,在appdeleget中的didfinished:方法中打下断点,并按下图编辑断点:
如图:
打完断点后,就可以选择模拟器运行工程了,当工程跑起来后,打开reveal,点击左上角的工程选择,会看到我们的工程。如第一幅图:
用Reveal 连接真机调试:请看下篇博客