iPhoneアプリ開発の虎の巻
HOME > UIScrollView

UIScrollView

UIScrollViewクラスは、画面のスクロールを管理するクラスです。
iPhoneの画面に入りきらないような大きな画像を表示したり、電子書籍のように複数のページを送って表示させたい場合などに使用します。

UIScrollViewのクラス階層

NSObjectUIResponderUIView ↑ UIScrollView

生成

// 生成例
UIScrollView *sv = [[UIScrollView alloc] init];

// サイズを指定した生成例
UIScrollView *sv = [[UIScrollView alloc] initWithFrame:self.view.bounds];

サイズに関しては、サイズ指定のCGRect欄をご覧ください。

UIScrollViewのプロパティ

【UIScrollViewの主要プロパティ】
プロパティ名/型 読専 説明
delegate
(UIScrollViewDelegate)
デリゲートを指定する
(例)sv.delegate = self;
bounces
BOOL
スクロールをバウンドさせるかどうかの設定
 YES:バウンドさせる(デフォルト)
 NO:バウンドさせない
(例)sv.bounces = NO;
contentSize
CGSize
スクロール画面サイズを指定する
(例)sv.contentSize = CGSizeMake(320*10, 480);
indicatorStyle
(UIScrollViewIndicatorStyle)
スクロールバーのスタイルを設定する
 UIScrollViewIndicatorStyleDefault:グレー(デフォルト)
 UIScrollViewIndicatorStyleDefault
 UIScrollViewIndicatorStyleBlack:黒
 UIScrollViewIndicatorStyleBlack
 UIScrollViewIndicatorStyleWhite:白
 UIScrollViewIndicatorStyleWhite
pagingEnabled
BOOL
スクロール方法を指定する
 YES:1ページ単位でスクロールさせる
 NO:ページ単位でのスクロールはしない(デフォルト)
contentOffset
CGPoint
スクロール画面の初期位置を指定する
(例)sv.contentOffset = CGPointMake(640, 0);
minimumZoomScale
float
ピンチインなどで縮小したときの最小倍率を設定する
(例)最小倍率を0.1倍に設定する
 sv.minimumZoomScale = 0.1;
maximumZoomScale
float
ピンチアウトなどで拡大したときの最大倍率を設定する
(例)最小倍率を2.5倍に設定する
 sv.maximumZoomScale = 2.5;

主要なプロパティのみ掲載しています。
 上記「UIScrollViewのクラス階層」にあるクラスのプロパティも使用できます。

UIScrollViewのデリゲートメソッド

【UIScrollViewDelegate】
メソッド 説明
-(void)scrollViewDidScroll:
(UIScrollView *)scrollView
スクロールしたら呼ばれる
(すくロースし続けている間よびだされる)

主要なデリゲートメソッドのみ掲載しています。

UIScrollView例文

// スクロールビュー例文
UIScrollView *sv = [[UIScrollView alloc] initWithFrame:self.view.bounds];
sv.backgroundColor = [UIColor cyanColor];

UIView *uv = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1000, 1000)];
[sv addSubview:uv];
sv.contentSize = uv.bounds.size;
[self.view addSubview:sv];

totop