2012-01-11 5 views
0

私は4枚の画像を保持しているビューコントローラをahve、私はこれらのイメージのためにページネーションを実装し、これは私のコードであるページネーションエラーscrollview

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    [imageViewObj setImage:[UIImage imageNamed:@"[email protected]"]]; 

    NSTimer *ImgChangeTimer = [NSTimer scheduledTimerWithTimeInterval:2.0 
                   target:self 
                  selector:@selector(changeImage) 
                  userInfo:nil 
                   repeats:YES]; 

pageControlBeingUsed = NO; 

    NSArray *colors = [NSArray arrayWithObjects:[UIImage imageNamed:@"[email protected]"], [UIImage imageNamed:@"[email protected]"], [UIImage imageNamed:@"[email protected]"],[UIImage imageNamed:@"[email protected]"] ,nil]; 
    for (int i = 0; i < colors.count; i++) { 
     CGRect frame; 
     frame.origin.x = self.scrollView.frame.size.width *i; 
     frame.origin.y = 0; 
     frame.size = self.scrollView.frame.size; 

     UIImageView*subview = [[UIView alloc] initWithFrame:frame]; 
     UIImage *imggg = [colors objectAtIndex:i]; 
     [subview setBackgroundColor:[UIColor colorWithPatternImage:imggg]]; 
     [self.scrollView addSubview:subview]; 
     [self.scrollView addSubview:imageViewObj]; 
     [subview release]; 
     } 
    self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * colors.count, self.scrollView.frame.size.height); 

    self.pageControl.currentPage = 0; 
    self.pageControl.numberOfPages = colors.count; 

私の必要性は、私は最後の画像で閉じるボタンを配置したい場合や、クローズボタンは最初の3つの画像のために隠されていて、最後の画像をページングしたときは非表示になります。これを行う方法はありますか? ありがとうございます。 EDIT

if (self.pageControl.currentPage == 0) { 
     UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"df" message:@"okkkk" delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil, nil]; 
     [alert show]; 
     [alert release]; 
    } 

私はviewdidlodでこれを入れて、私はalertview

を取得するが、私は "4" を入れたときの代わりに "0" 私はalertview

+0

が、あなたは以下の条件であれば、私はそれをしなかった(self.pageControl.currentPage == 3) – rishi

+0

@RIPのyeaaを使用する必要がありますが、何もこの方法では起こりません – stackiphone

+0

あなたはself.pageControl.currentPageの値をデバッグしようとしましたが、これを記録して何が存在するかを調べてみてください。 – rishi

答えて

0

ちょうどコードの下にしようとしますdidntは、スニペット:あなたは4ページをお持ちの場合は

NSInteger page; 
     page = (scrollView.contentOffset.x/scrollView.frame.size.width); 
    if (page == 3) { 
     UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"df" message:@"okkkk" delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil, nil]; 
     [alert show]; 
     [alert release]; 
    }