1

ツールバーに 2 つの UIBarButtonItems を追加しました。

最初に使用して追加したもの

initWithImage:style:target:action:

2 つ目は、最初の例で使用したものと同じイメージに設定された UIImageView を含む UIButton を作成しました。また、画像ビューをボタンよりもわずかに小さくして、ラベル用のスペースを確保しました。次に、BarButtonItem を作成しました

initWithCustomView:

画像の非常に異なるレンダリングが得られます。

ここに画像の説明を入力

ここで何が起こっているのですか? また、2 番目の例で期待どおりに画像を表示するにはどうすればよいですか?

注: 実際にはボタンを逆の順序で追加しました。上の画像では、最初のボタンは initWithCustomView を使用しています。

4

1 に答える 1

2

initWithImage:style:target:actionのドキュメントによると

バーに表示される画像は、この画像から派生したものです [...] ソース画像のアルファ値は、画像の作成に使用されます。不透明な値は無視されます。

そのため、画像はマスクとして使用されています。これは通常、ツールバーで使用される動作ですが、ここでも使用できます。バーで画像ピクセルを使用する場合は、カスタム ビューを使用する必要があると思います。

于 2012-04-26T20:33:07.260 に答える