0

> iOS5 UINavigationBar で drawRect が呼び出されないことを最近発見しました。カテゴリでコア グラフィックスを使用して描画する方法を理解したいと考えています。

私が達成しようとしている最終目標は、アプリから画像を削除し、実行時にすべてを描画することです。また、ユーザーがカスタム クラスの使用について考える必要がないように、このライブラリを自動化しようとしています。

実行時にクラスを独自のクラスに置き換える方法はありますか? お気に入り:replaceClass([UINavigationBar class], [MyCustomBar class]);

前もって感謝します。

4

2 に答える 2

0

解決策を見つけました。drawrectをいじる代わりに、UIImageに描画し、カスタマイズしている要素の背景ビューとして画像を設定するメソッドをいくつか作成しました。それは私のカスタムUIを再び魔法のようにします。

于 2013-01-30T18:14:08.570 に答える
0

実行時にクラスを独自のクラスに置き換える方法はありますか?

Objective-C では、これはクラス ポージングとして知られています。

クラスのポージングは​​、(iPhone を含む 64 ビット プラットフォームで) 非推奨となったNSObjectのメソッドの使用に基づいています。poseClass

代替アプローチが調査されています。ここで1 つについて読むことができますが、法案に完全に適合していないようです。

于 2013-01-28T16:30:51.990 に答える