reveal的功能比較強大,可以查看視圖的層級,比起Xcode自帶的debug view hierarchy 強大些(自認為),對于如何使用,之前也是云里霧里。
1.集成
需要自建的項目能夠在reveal中使用,需要用到reveal的SDK,我們只需要在集成Reveal.framework和libz的庫就可以了。Reveal.framework不需要再其他的地方下載,只需要在軟件中的help->library中查找就可以了。添加到項目中就可以了。
然后需要在項目中添加libz的庫
最后只需要在build setting中other linker flag中添加-ObjC就可以了
以上就是關于reveal的相關配置
2.演示
相關的配置已經設置完成后,運行項目,就會在reveal中找到已經運行的項目了。
這時,打開reveal軟件,我們會看到沒有相關的界面,這是由于沒有選擇到相關項目。
這時就會有相應的界面出現。
這里面可以看到某個圖層屬于哪一個類,某個view的frame 還可以就在reveal中修改尺寸看到最終的效果,當然再次這可以在模擬器或者已經越獄的手機上可以看到相應的變化;如果我們在模擬器或者手機上進行了某項操作,但是reveal沒有及時刷新,我們就再次點擊之前選擇項目的那個地方就可以進行刷新reveal的視圖了。
下面就簡單的介紹下使用
以百度語音識別的demo舉個栗子。。。(demo可以在百度的官網去下載的)
運行顯示的效果為:
點擊識別UI,會出現出現語音識別的view,在view中有‘百度語音提供技術支持’這行字。
通過Xcode自帶的視圖查看器去分析這個頁面結果會得到如下
我們可以看到'百度語音提供技術支持'這行字是屬于window下的一個view的view的label,這樣顯示并不能很直觀的顯示出到底這個label是屬于哪一個控制器下的。reveal是可以做到這樣的效果的。
很遺憾,這個類在百度給出的demo中沒有找到,應該是封裝在 .a的靜態庫中或者是其他的framework中。但至少我們知道了這個label是屬于哪個類的。如果我們換成自己的demo,需要修改某個標簽就可以很快的找到相對應的類了。
假如,在沒有美工的情況下,我們需要微調一些視圖的frame,我們也可以在reveal中進行操作。
假如我們需要修改label的高度為40,這時可以再reveal中實時看到修改的結果(當然回到模擬器或者真機運行的時候,reveal顯示又會回到之前的狀態)。
這就很直觀的顯示了視圖的位置或尺寸的變化情況,這對于界面的微調很有幫助。文字的修改也是可以如上操作的。
以上就是reveal的基本使用,后續想到有些東西會繼續在這里添加。