UI調(diào)試_UIDebuggingInformationOverlay
我的原博:http://ryukiesama.github.io/Ryukie.GitHub.io/2017/05/31/UI調(diào)試-UIDebuggingInformationOverlay/
最近看到一篇關于使用Apple私有API進行UI調(diào)試的文章(http://ryanipete.com/blog/ios/swift/objective-c/uidebugginginformationoverlay/)
在這里簡單說下怎么使用
話說這玩意兒本身不是很穩(wěn)定,有時在調(diào)試窗口中就會崩潰...
使用方法
直接上代碼吧
由于使用的是Apple的私有API所以只能通過下面的方式來調(diào)用
寫在AppDelegate里即可
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
[NSClassFromString(@"UIDebuggingInformationOverlay") performSelector:NSSelectorFromString(@"prepareDebuggingOverlay")];
return YES;
}
注意:
只能在開發(fā)調(diào)試階段使用上架之前一定要干掉不然會被拒掉的哦
調(diào)起調(diào)試窗口
在任意頁面使用雙指 單擊狀態(tài)欄即可調(diào)起調(diào)試窗口
通過按住調(diào)試窗口的頂部可以拖動調(diào)整調(diào)試窗口的位置
也可以通過左上角按鈕進行全屏和窗口模式的切換
如圖效果:
下面來看看都有哪些功能吧
View Hierarchy 視圖集合
這里會顯示當前Window
下的視圖集合,層級關系頁十分清晰,點擊后面的i
圖標還可查看對應View的詳細信息
你還可以在不同Window
間切換查看
VC Hierarchy 控制器集合
這里的控制器集合和上面的視圖集合差不多
提供的信息也挺詳細的
Ivar Explorer 變量
這里我們可以看到UIApplication
的所有變量
感覺實際用處不是很大,變量過多也沒有篩選功能,而且...有時滑滑還會Crash掉??
Measure 測量
挺實用的功能
有幾種模式可以選擇
使用方法:
手指長按屏幕移動,調(diào)試窗口中有個紅色小方塊對應的就是當前你按壓的點
水平測量
- 不開啟
ViewMode
以你按壓的點的位置水平方向,最近的兩個可見的輪廓邊緣最近距離,無視控件
通過下面這張圖可以明顯的感覺到這個測量是根據(jù)輪廓來的...居然測了我老婆頭發(fā)邊緣到左邊的距離
- 開啟
ViewMode
開啟ViewMode
后測量的就是按壓所在控件的尺寸了
垂直測量
具體和水平測量差不多我就不多贅述了
- 不開啟
ViewMode
- 開啟
ViewMode
Spec Compare 效果對比
這個功能在對比UI效果還原度上真乃神器也~
首先把UI妹紙給你的UI圖發(fā)到手機上
在需要對比的頁面上雙擊狀態(tài)欄喚起調(diào)試工具
點擊 Spec Compare
進入下面的頁面
點擊右上 Add
從手機相冊導入UI圖
點擊導入的UI圖即可進入對比模式
調(diào)試工具會將導入的UI圖覆蓋在當前頁面上
通過單指上下滑動即可調(diào)整透明度,從而進行UI還原度的對比,效果如下
雙擊屏幕即可退出對比模式
System Color Audit
還沒發(fā)現(xiàn)有啥用...點進去啥都木有來著
待發(fā)掘