2011-10-12 14 views
7

私の問題は基本的にthis oneと同じです。私はUIViewを持っていて、CGAffineTransformMakeRotationを使って回転させると、エッジはアンチエイリアスされません。回転したUIViewでアンチエイリアスを行う方法(UIImageViewではありません)

もっと大きなUIViewでビューをサブビューとして追加し、ビュー上に透明な境界線を使用してみましたが、これらのどれもうまくいきませんでした。

Photoshopで透明な枠線を使用し、代わりにUIImageViewを使用してイメージを作成することで、この問題を解決しましたが、UIViewのサイズは実行時に決定されるため同じことができません。

誰もがこの問題の解決策を知っていますか?

投稿はthis投稿と重複していないことに注意してください。私はUIImageViewではなくUIViewを使用したいと思っています。

答えて

19

App-info.plistでUIViewEdgeAntialiasing = YESを設定してみてください

+0

これは本当に機能します!あなたの答えを見るために私は年齢のため申し訳ありません... – Kremk

+0

これはあなたのアプリのCPU使用率を上げるかどうか知っていますか? –

0

私はこれをPhotoshopで3x3ピクセルの画像を作成することで解決しました。画像の中央のピクセルには、背景が欲しかった色があり、残りのピクセルは透明です。次に、UIImageViewのインスタンスを使用して、実行時に-stretchableImageWithLeftCapWidth:topCapHeight:メソッドを使用してフレームサイズを定義することができました。

このソリューションは、もちろんUIViewでは機能しませんが、「可変サイズ」の問題を回避して代わりにUIImageViewを使用できます。

関連する問題