質問: iphone uilabelテキストのソフトシャドウ iphoneのuilabelでは、ソフトシャドウはサポートされていません。それでは、自分のものを実装する最良の方法は何でしょうか?編集:明らかに、uilabelをサブクラス化し、-drawrectに描画します。私の質問は、ラベルの内容をグラフィックスとして取得し、それらの周りに描画、ぼかしなどを行う方法です。編集2:約1年後にこの質問に戻りました。それまでの間、ラベルにソフトシャドウを簡単に追加して半径などを微調整したり、テキスト自体にグラデーションを描画したりできるクラスを作成しました。 githubで見つけることができます: https://github.com/doukasd/ios-components/tree/master/views
回答: ios 5の時点でappleはソフトシャドウ付きのラベルを作成するためのプライベートapiメソッドを提供します。ラベルは非常に高速です。スクロールアニメーションの速度低下はありません。これは非app storeアプリ(明らかに)でのみ有用であり、ヘッダーファイルが必要です。$sbbulletinblurredshadowlabel = nsclassfromstring("sbbulletinblurredshadowlabel"); cgrect frame = cgrectzero; sbbulletinblurredshadowlabel *label = [[[$sbbulletinblurredshadowlabel alloc] initwithframe:frame] autorelease]; label.backgroundcolor = [uicolor clearcolor]; label.textcolor = [uicolor whitecolor]; label.font = [uifont boldsystemfontofsize:12]; label.text = @"i am a label with a soft shadow!"; [label sizetofit];