ROADTO みちログ

ひとのみちのブログ。大阪でiOSアプリの道を歩くフリーランス。

viewをグラデーションする簡単な方法

iPhoneアプリ「めざまし天気」を申請中でして。
その中で使ったTipsを書いておきます。

viewをグラデーションする方法を。

CAGradientLayerというQuartzCore.frameworkにあるクラスを使います。

できあがりがこちら。
f:id:hitonomichi:20131101074953p:plain
素敵。


グラデーションの方法

    //開始・終了色を指定します。
    UIColor *startColor = [UIColor redColor];
    UIColor *endColor   = [UIColor yellowColor];

    //開始・終了座標指定します。
    CGPoint startPoint = CGPointMake(0.0, 0.0);
    CGPoint endPoint   = CGPointMake(1.0, 1.0);

    //グラデーションを生成します。
    CAGradientLayer* gradientLayer = [CAGradientLayer layer];
    gradientLayer.frame = self.view.bounds;
    gradientLayer.colors = @[
                       (id)[startColor CGColor], //開始色
                       (id)[endColor   CGColor]];//終了色
    [gradientLayer setStartPoint:startPoint];    //開始座標
    [gradientLayer setEndPoint:endPoint];        //終了座標
    //layerを最前面に追加します。
    [self.view.layer insertSublayer:gradientLayer atIndex:0];

今回は2色でお届けしましたが、colorsに複数指定すればその分だけグラデーションしてくれます。
条件によって動的に色を変えたいときに使えそうですね。

以上、嫁の小言を素早く終了させる簡単な方法の紹介でした。

自己紹介
メガネは売っていません
高浜 一道(たかはま かずみち)
大阪でiOSアプリの道を歩くフリーランス。
iPad・iPhoneとサーバを連携した、JSONやDBといったキーワードが出てくるツール系が多めです。
お仕事のご依頼やご連絡はこちらから。
お仕事ください!
Web : ROADTO
ML : k-takahama(a)roadto.jp

個人的なアカウントはこちら。
Tw : @hitonomichi
Fb : kazumichi.takahama