2011-12-06 9 views
2

iOSの多くのカスタマイズでは、カテゴリやサブクラスを使用してUIKitの要素のデフォルト動作をオーバーライドする必要があるようです。UIKit要素をサブクラス化するためのドキュメントを探す

ドキュメントなしでUIButtonやUIWebViewなどのクラスの内部動作をどのように表示しますか? .NETの場合、Reflectorがあります。それがココアのために存在するようなものはありますか?

答えて

1

かなり良いドキュメントがあります。たとえば、UIView programming guide,UIButtonおよびUIWebKitです。リンゴプログラミングガイドと*クラスリファレンスを検索してください。すべてのプログラミングガイドを読むことをお勧めします。クラスリファレンスドキュメントを使用し、何よりも正確に動作を理解するためにコントロールを使用してサンプルコードを記述します。

.netは、ILにコンパイルされ、実行時にネイティブにJITtedされます。したがって、リフレクターやILSpyのようなものは、実行時にメタデータを反映するだけでなく、コードをリバースエンジニアリングすることもかなり簡単です。

Objective-cとCコードはネイティブコードにコンパイルされているため、リバースエンジニアリングされていないようなコードにリバースエンジニアリングされることはありません。 http://davegoodell.blogspot.com/2009/05/otx-objective-c-disassembly.html

1

がbryanmacが言ったことに加えて、あなたはまた、任意のUIViewインスタンスにrecursiveDescriptionメッセージを送信することにより、再帰的にビュー階層をダンプすることができます:私が見てきた唯一のものは、OTXです。詳細については、Technical Note TN2239: iOS Debugging Magicを参照してください。

編集:しかし、ほとんどのAppleが提供するUIViewサブクラスのビュー階層を変更することは禁止され、とiOS 5は、それらの外観と動作をカスタマイズする他の方法を導入していることに注意してください。

+0

+1 - 彼らがどのように構成されているかを理解するためのクールチップ – bryanmac

関連する問題