「QuartzCore」カテゴリーアーカイブ

UIViewに影をつける


UIViewに影をつけると、立体感のある素敵なユーザインターフェースを実現できます。

1. QuartzCore/QuartzCore.hをインポート

#import <QuartzCore/QuartzCore.h>

2. 影の濃さと位置を指定します。

view.layer.shadowOpacity = 0.2; // 濃さを指定
view.layer.shadowOffset = CGSizeMake(10.0, 10.0); // 影までの距離を指定

ヒント:
setTransformで回転させたりした場合、影も回転してしまいます。スクリーンショットに掲載しているアプリの時針・分針・秒針は、少しずらした位置に別のUIViewを影っぽい色で表示しています。

UIViewの画像をUIImageに変換


UIViewで表示しているイメージをUIImageを作る方法です。を忘れずにインポートして下さい。

#import <QuartzCore/QuartzCore.h>

- (UIImage*)CreateUIImageFromUIView:(UIView*)view
{
    UIGraphicsBeginImageContext(view.bounds.size);
    CGContextScaleCTM(UIGraphicsGetCurrentContext(), 1.0f, 1.0f );
    [view.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage* viewImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return viewImage;
}

参考
UIVIEWからUIIMAGE データを作成する方法

UIViewの角を丸める方法


UIViewの角を丸める方法です。もちろん、UIViewのサブクラスすべてに対して適用できます。

  1. QuartzCore/QuartzCore.hをインポート
    #import <QuartzCore/QuartzCore.h>
  2. 角を丸めたいビューのlayer.cornerRadius(角の半径)を設定
    backgroundView.layer.cornerRadius = 8.0f;

イメージ

白の長方形の角が丸くなっています。