簡體   English   中英

如何在Objective-C中跟蹤發送到特定類或實例的所有消息?

[英]How to trace out all messages sent to a particular class or instance in Objective-C?

我想找出由Objective-C運行時發送到特定類的所有消息,例如UITableView(或特定實例),以便我可以更好地理解某些類的內部工作原理。 有沒有辦法做到這一點?

另一個用例是跟蹤所有被調用的委托方法(例如UITableViewDelegate方法),而不必聲明它們,並在每個方法中放置一個trace方法。

這可能有點笨拙,但是請嘗試將NSObjCMessageLoggingEnabled環境變量設置為YES。 這將顯示發送給每個對象的所有消息,但是您可以輕松地將其過濾為發送給特定類的消息。

這里有一些不錯的提示: http : //www.dribin.org/dave/blog/archives/2006/04/22/tracing_objc/

免責聲明:我不確定環境變量是否適用於iPhone。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM