0

Xcode ui ビルダーでは、UIToolBar の UIBarStyle (たとえば、BlackTranslucent など) を設定すると、UIToolBarItem が背景画像と一致します。UIToolBarItem はどのスタイルを使用する必要があるかをどのように認識しますか?

通常の背景タイルの上にカスタム色の画像を配置しようとしています(背景画像の上に特定の画像をプログラムでマージします)。すべての UIBarStyles を処理できるように、コードを十分に一般化できるようにしたいと考えています。つまり、UIToolBarItem が使用する背景をいつ決定し、それをインターセプトして、その場でボタン イメージを構成できるかを知りたいということです。

4

1 に答える 1

1

AppleのUIBarbuttonItemの実装を見ることができに、実際、彼らはUIToolbarのスタイルが何であるかを知らないと思います。よく見ると、ツールバーと同じアルファと同じオーバーレイ(サブビューを示す)があります。したがって、サブビューとして追加された、この強調表示されたレイヤーの下にある画像は、UIToolbarのスタイルに準拠している必要があります。ただし、複数の画像(barStyleごとに1つ)を使用する場合は、-viewDidLoad時にそれを決定しself.myToolbar.barStyle、適切に計画することができます。真の画像描画に関しては、UIToolbarをサブクラス化し、オーバーライド-drawRect:して使用します[UIImage drawInRect:rect];

于 2012-04-26T03:48:21.500 に答える