2010-07-20 11 views
11

utilizo el siguiente para mostrar ScrollView y PageControlUIPageControl no se muestra

scrollView=[[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 179)]; 
    pageControl=[[UIPageControl alloc] initWithFrame:CGRectMake(0, 179, 320, 20)]; 

    scrollView.delegate = self; 
    [scrollView setBackgroundColor:[UIColor blackColor]]; 
    [scrollView setCanCancelContentTouches:NO]; 
    scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite; 
    scrollView.clipsToBounds = YES; 
    scrollView.scrollEnabled = YES; 
    scrollView.pagingEnabled = YES; 

    int index=[[self._parameters objectForKey:@"index"] intValue]; 
    NSString *imageNamePrefix=[[activeAppIdList objectAtIndex:index] objectForKey:@"AppID"]; 
    int noOfScreenShot=[[[activeAppIdList objectAtIndex:index] objectForKey:@"NoOfScreenShot"] intValue]; 

    CGFloat cx = 0; 
    for (int j=1;j<=noOfScreenShot ; j++) { 
     UIImage *image =[[UIImage alloc] init]; 
     image= [self loadImage:[[NSString alloc]initWithFormat:@"%@_%d.jpg",imageNamePrefix,j]]; 

      if (image == nil) { 

      NSString *urlString = [[NSString alloc]initWithFormat:@"http://localhost/MoreApp/images/%@_%d.jpg",imageNamePrefix,j]; 

       NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:urlString]]; 
      UIImage *temp=[[UIImage alloc]initWithData:imageData] ; 

      [self saveImage:temp withName:[[NSString alloc]initWithFormat:@"%@_%d.jpg",imageNamePrefix,j]]; 

      image = temp; 
      [temp release]; 
      [urlString release]; 
     } 

     UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; 
     [image release]; 
     imageView.frame = CGRectMake(cx,0,scrollView.frame.size.width,scrollView.frame.size.height); 
       [scrollView addSubview:imageView]; 
     [imageView release]; 

     cx += scrollView.frame.size.width; 


    } 

    NSLog(@"No Of pages..%d",noOfScreenShot); 
    pageControl.numberOfPages = noOfScreenShot; 
    pageControl.currentPage = 0; 
     scrollView.contentSize = CGSizeMake(cx,scrollView.frame.size.height); 

    NSLog(@"Width:%f",scrollView.frame.size.width); 

    [ refToSelf.instructionView addSubview:scrollView]; 
    [ refToSelf.instructionView addSubview:pageControl]; 


    [scrollView release]; 
    [pageControl release]; 

ScrollView está bien, pero no mostró pagecontroll ... puedo ayudar ??

+0

ok..i ... lo resolví ... – Rony

+0

Si resolvió su pregunta, publique la solución y marque la respuesta. – Tsimmi

Respuesta

28

Si el color de fondo del contenedor y del control de página es el mismo (por defecto en blanco), el control de página no estará visible.

+1

sí ... fue un error ... tanto el fondo como el control de página tienen el mismo color ... por lo que no era visible ... – Rony

2

Mi error fue igualmente molesto: desarrollar con storyboard en una vista de 3.5 pulgadas, y construido en un dispositivo de 4 pulgadas en el simulador, por lo que fue fuera de la pantalla. ¡Tonto!

10

Para cualquier persona que encuentre esto, otro error tonto que puede cometer es no establecer el atributo numberOfPages en el UIPageControl, que también hará que no se muestre.

+0

Este fue mi error ... –