2

のプロパティを描画するプロセスの一部として使用されている画像に適用したいマスク (256 グレーの PNG から読み込まれた) があります。UITableViewCellimageView.image

セルが選択/強調表示されていない場合はCGImageCreateWithMask、適切な色の正方形とマスクをdrawAtPoint:使用して、作成中の画像に挿入します。これはうまくいきます。

ただし、セルが選択または強調表示されている場合は、代わりにマスクを使用して、画像を適切にパンチしたいと考えています。つまり、マスクが完全な不透明度を指定している場合、作成中の画像を完全に透明にして、テーブルビューの背景がそれを通して描画されるようにします。マスクが 0 の不透明度を指定している場合、アルファ チャネルは変更しないでください。影響を受けるアルファチャンネル以外は何も望んでいません。

私が言いたいのはUIImage、マスクに応じてさまざまなレベルの不透明度で、 の上に clearColor を描画したいということだと思います。

まず、これを何といいますか?第二に、どうすればいいですか?

4

1 に答える 1

1

そのためには、CALayers を操作する必要があると思います。セルの CALayer : CALayer mask attributeの mask プロパティを使用できます。

つまり、(myMask が UIView の子孫である場合) のようなものです。

myCell.layer.mask = myMask.layer
于 2009-12-11T23:02:28.327 に答える