【Objective-C】iPhoneアプリ開発:シンプル UIScrollView

2013/01/29  カテゴリー:アプリ開発    タグ:タグ:



NSImageView_UIScrollView

IBやストーリーボードを使わないUIScrollView

何度も使っていても、またなんだっけになるので、
基礎だけをを整理する



ちょっといじるとすぐにコードが多くなるので最小限をまとめる

概要

まずスクロールビューの生成

UIScrollView * scrollView = [[UIScrollView alloc] init] ;

// 大きい方(中身=コンテンツ)のサイズ

scrollView.contentSize = CGSizeMake(self.view.frame.size.width*scCount,flHeight);

// 実際に見える範囲

<span style="font-size: 0.75em; font-weight: normal;">scrollView.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, flHeight);</span>

// コンテンツをスクロールビューに追加(今回はLabel)

[scrollView addSubview:label];

// スクロールビューをビューに追加

[self.view addSubview:scrollView];
基本は以上。

あとは、細かい描写。

まとめ

一応とりあえず動くコードはこちら

// サイズの設定
int scCount = 3;
float flHeight = 200;
// スクロールビューの生成
UIScrollView * scrollView = [[UIScrollView alloc] init] ;
// 大きい方(中身=コンテンツ)のサイズ
scrollView.contentSize = CGSizeMake(self.view.frame.size.width*scCount,flHeight);
// 実際に見える範囲
scrollView.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, flHeight);
// おまけ
scrollView.pagingEnabled = YES;
scrollView.scrollEnabled = YES;
//scrollView.delegate = self;
scrollView.backgroundColor = [UIColor whiteColor];
// 垂直、水平方向のスクロールインジケータを非表示にする
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = NO;
for(int i = 0; i &lt; scCount; i++){//ページの中身を作成
UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(320.0f * i, 0, 150 , 150)];
label.text = [NSString stringWithFormat:@"%d", i];
label.font = [UIFont fontWithName:label.font.fontName size:40.0f];
label.textAlignment = UITextAlignmentCenter;
label.backgroundColor = [UIColor blueColor];
// コンテンツをスクロールビューに追加
[scrollView addSubview:label];

Share on Google+Tweet about this on TwitterShare on Facebook