2011-07-06 4 views
0
- (void)viewDidLoad 
{ 

    UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetected:)]; 
tapGesture.numberOfTapsRequired = 1; 
tapGesture.numberOfTouchesRequired = 1; 


scrollView = [[UIScrollView alloc] initWithFrame:self.view.frame]; 

int numberOfImages = 32; 
CGFloat currentX = 0.0f; 

for (int i=1; i <= numberOfImages; i++) { 

    // create image 
    NSString *imageName = [NSString stringWithFormat:@"page-%d.jpg", i]; 
    UIImage *image = [UIImage imageNamed:imageName]; 
    imageView = [[UIImageView alloc] initWithImage:image]; 

    // put image on correct position 
    CGRect rect = imageView.frame; 
    rect.origin.x = currentX; 
    imageView.frame = rect; 

    // update currentX 
    currentX +=454; //mageView.frame.size.width; 

    [scrollView addSubview:imageView]; 
    [imageView release]; 
} 
[scrollView addGestureRecognizer:tapGesture]; 

scrollView.contentSize = CGSizeMake(currentX, 800); 
scrollView.pagingEnabled=YES; 
scrollView.userInteractionEnabled = YES; 
scrollView.maximumZoomScale = 15; 
scrollView.minimumZoomScale = 0.5; 
scrollView.bounces = NO; 
scrollView.bouncesZoom = NO; 
scrollView.delegate = self; 

scrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin; 
[self.view addSubview:scrollView]; 
[scrollView release]; 
[super viewDidLoad]; 

} 
} 

上記のコードでは、単一の画像でズームまたはタップイベントを適用すると、それが機能します。しかし、同じイベントが画像の配列に適用され、その後は動作しません。どうしてそれが起こったのですか?UIScrllViewで画像ビューの画像配列を使用してズームイベントを適用する

+1

ズーム機能のコードはありますか?上記のコードで – KingofBliss

+0

私はズーム機能のコードを書いていない。私は試してみましたが、うまくいきません。だから私はどのようなコードを書いているのか、どこで書くのかを教えてください – ram

答えて

0

この種の画像フローでズームを実装する静かな複合体です。とにかく私は1つのアイデアを提案します。

各画像にジェスチャーを追加します。このメソッドでは、それぞれのimageViewを使って新しいスクロールビューを追加し、ズームを実装します。

EDIT:ImageViewのは、その時点で表示されてtapgesture方法において

1.Find。

2.その1つの画像ビューで新しいスクロールビューを作成します。

3.新しいスクロールビューでズーム機能を実装します。

4.During新しいscrollviewサイズが実際の値に等しい場合、ズームアウト画像の配列が表示されるように、スーパービューあちこち新しいscrollviewを除去します。

+0

私は、画像ビューに追加するスクロールビューのジェスチャを追加しました。 – ram

+0

私は任意の画像をタップしたときに、コンソールに、それは点の座標を示しpersent勝利のiPhoneシミュレータで今編集した答え – KingofBliss

+0

をチェック@ram。それで、私はそのイベントのコードを書いて、画像をズームするようにしましたか? – ram

0

まず、a big wrapper viewを作成してScrollViewに挿入します。
そして、すべてのimageViewsをwrapper viewに追加してください。

+0

ラッパービューの作成方法私はそれについて何も考えていない。あなたは簡単に私の身長を上げることができますか? – ram

関連する問題