2009-11-30 10 views
6

¿Qué estoy haciendo mal? Aquí es cómo creo + poblar mi ScrollViewUIScrollView no responde a setZoomScale:

-(void)viewDidAppear:(BOOL)animated { 

    UIImageView *imgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"bigimage.jpg"]]; 
    imgView.contentMode = UIViewContentModeScaleAspectFit; 

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

    scrollView.minimumZoomScale = scrollView.frame.size.width/scrollView.contentSize.width * 0.99; 
    scrollView.maximumZoomScale = 2; 

    [self.view addSubview:scrollView]; 


[scrollView addSubview:imgView]; 

    [scrollView setZoomScale:0.5 animated:YES]; 
    NSLog(@"current zoomScale: %f", scrollView.zoomScale); 
    [imgView release]; 
} 

El NSLogged zoomScale es de 1,0, y la imagen se muestra claramente en tamaño completo. Pinch zoom no hace nada. He intentado casi todo lo que puedo encontrar en la red, pero todo el mundo parece estar haciendo exactamente esto, y funciona para ellos.

¡La ayuda es muy apreciada!

+0

Gran pregunta, como lo demuestra que aparece como # 1 en Google en UIScrollview setzoomscale no funciona :) –

Respuesta

21

Un UIScrollView no va a enfocar si no tiene como delegate propiedad establecida en una válida UIScrollViewDelegate que responde a

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView; 

Salida   the documentation.

+0

¡GRACIAS! Acabo de encontrar esto en otro lugar hace dos segundos y había regresado para arreglar mi pregunta. Claramente, no estoy leyendo los documentos lo suficiente. –

Cuestiones relacionadas