2009-07-31 11 views

答えて

21

あなたはCGContextに色を描画し、それからイメージをキャプチャすることができます。

- (UIImage *)imageWithColor:(UIColor *)color andSize:(CGSize)size { 
    //Create a context of the appropriate size 
    UIGraphicsBeginImageContext(size); 
    CGContextRef currentContext = UIGraphicsGetCurrentContext(); 

    //Build a rect of appropriate size at origin 0,0 
    CGRect fillRect = CGRectMake(0,0,size.width,size.height); 

    //Set the fill color 
    CGContextSetFillColorWithColor(currentContext, color.CGColor); 

    //Fill the color 
    CGContextFillRect(currentContext, fillRect); 

    //Snap the picture and close the context 
    UIImage *retval = UIGraphicsGetImageFromCurrentImageContext(void); 
    UIGraphicsEndImageContext(); 

    return retval; 
} 
+0

、私はそれを描くよりも、それが容易になり、いくつかの方法があると思います(それはそれはあなたが達成しようとしているものだが、もちろん場合にのみ、です。たぶん、あなたはそうではありません)。 サーフィン中はいつか見たけど、覚えていない。もし誰かがそれを知っているなら、ここにそれを掲示する考え。 – rkb

+0

これを描画するのは、便利な方法で折り返すことができる〜7行です。私はそれがはるかに簡単になることはありません、それはまったく共通の機能ではありません。 –

+0

UIGraphicsGetImageFromCurrentImageContext()を検討してください。 UIGraphicsGetImageFromCurrentImageContext(void)の代わりに。 – LordParsley

2

あなただけのただ

UIView *solid = [[UIView alloc] initWithFrame:someFrame]; 
solid.backgroundColor = [UIColor greyColor]; 
ような何かをしない理由は色の固体四角形を作成しようとしている場合

次に、ソリッドカラーを表示するサブビューにビューを追加します。

関連する問題