分析視圖層次

來源:互聯網
上載者:User

1.方法一:

被隱藏的指令是recursiveDescription,你可以簡單地用它對view進行檢查,在view中調用recursiveDescription來列印它的繼承關係。 由於是私人方法,鍵入時不會有任何提示,注意不要輸錯。 即在debug地區。輸入 po [self.view recursiveDescription]  2.方法二:

 做iOS的開發,UI是非常非常重要的一環。調試時我們一般用模擬器,提交前用真機做測試。用模擬器來調試UI效果雖然快捷方便,但有時仍然希望有更強大的工具來協助分析UI,尤其是專註在UI的效果調試時。最近看到了Reveal這個工具,發現真的是強大無比,類似於FireFox上的FireBug,對於UI上的層的顯示很清晰直觀,可以很方便的用於UI的調試,用來學習UI的使用也是無上利器。

      這個工具目前已經出到正式版了,需要花費銀子購買,好在還有30天的試用版本可以下載嘗嘗鮮。(http://revealapp.com),據說以前有免費的Beta版本,哪位大大如果有的話請分享一下給我,多謝了。

      安裝Reveal不算複雜,要把Reveal用到工程中則需要把framework或者dylib編入。

      1. 開啟Xcode工程

      2. 開啟Revel工具,選擇Menu->Help->Show Reveal Library in Finder,這樣就會開啟RevealApp裡面帶的庫


      3. 把Reveal.framework加入工程,在彈出框中選中Copy items into destination group’s folder (if needed).

      4.在工程設定中,在Other Linker Flags項增加-ObjC -framework Reveal

         如果你使用的還是Xcode4,那麼還需要增加-frame CFNetwork -frame QuartzCore -framework CoreGraphics

      5. 運行你的應用,應用可以是在模擬器上,也可以在真機上,不過必須保證Reveal和你的裝置在同一個網路裡面,然後選擇Reveal裡面的連結目標,連上應用後UI就會顯示出來,每個層次,每個元素都可以顯示,而且可以選中了看到資料。


      我這裡做的說明是把Reveal作為靜態庫連結到應用中的,也可以作為動態庫來載入,當然,設定略微有點不同,需要在AppDelegate.m檔案中增載入入和移除的代碼。

      最最強悍的是,有人研究出了用Reveal來觀看任意app的UI方法,而且也不複雜,這個屬於逆向工程的範疇了,在UI的學習上還是不錯的(http://c.blog.sina.com.cn/profile.php?blogid=cb8a22ea89000gtw)。

 

 

更多支援鍵盤通過視圖層級幫你理解複雜的app。3D導航,可流暢旋轉,縮放,選中以及高亮Reveal可讓你清楚哪個視圖執行了哪個類。Reveal可在裝置或者模擬器上運行,可以簡單地發現,串連至iOS app。 Reveal官方網址: http://revealapp.com/  

 

文章參考:http://blog.csdn.net/lin1986lin/article/details/21182717

http://blog.csdn.net/sakulafly/article/details/17994173

 

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.