2012-06-29 6 views
6

Un grupo de personas están interesadas en implementar la transición modal de curl de página en iOS como la que se encuentra en la aplicación nativa Maps - ver here, here y here - sin embargo la pregunta no parece han sido respondidas completamente. Entonces:Implementando iOS Maps estilo página curl gesture interacciones

¿Es posible mostrar un modal de página-curl debajo de una vista principal como es actualmente el caso en Maps en iOS 6? Deseo implementar la segue mediante "curling" de la vista superior con un dedo, dando la apariencia de interacción directa con el curl, como es el caso de iBooks en las mismas versiones de iOS.

Implementar el segue en sí mismo (como en una transición de curvatura parcial) no es el problema - es agregar la interacción de gestos (con pelado parcial dinámico).

+1

que han intentado con UIPageViewController? Creo que esto permite la interacción directa. – Felix

+0

¿Se puede usar UIPageViewController para mostrar un modal como en los mapas? – NSTJ

+0

No, supongo que es difícil reproducir el comportamiento exacto del rizo en la aplicación de mapas. No sé cómo lograr la posición de curvatura fija. – Felix

Respuesta

4

Esta pieza de código hará el truco: XBPageCurl

+0

¡Buen trabajo! Estoy en otro proyecto en este momento, pero lo verificará lo antes posible. – NSTJ

0

no creo que se necesita un OpenGL ES a rizar el mapView igual que en iOS 5. Sólo puede lograr que en QuartzCore framework sí. Se puede ver mi código como he mencionado here y también revisé ese código y probar este

- (void)mapCurl { 
    [UIView animateWithDuration:1.0 
        animations:^{ 
         CATransition *animation = [CATransition animation]; 
         [animation setDuration:0.7]; 
         [animation setTimingFunction:[CAMediaTimingFunction functionWithName:@"default"]]; 
         animation.fillMode = kCAFillModeForwards; 
         [animation setRemovedOnCompletion:NO]; 
         // For curl and uncurl the animation here.. 
         if (!_isCurled) { 
          animation.endProgress = 0.65; 
          animation.type = @"pageCurl"; 
          [_locationMapView.layer addAnimation:animation forKey:@"pageCurlAnimation"]; 
          // _backView is a view behind the mapView 
          [_locationMapView addSubview:_backView];         
         }else { 
          animation.startProgress = 0.35; 
          animation.type = @"pageUnCurl"; 
          [_locationMapView.layer addAnimation:animation forKey:@"pageUnCurlAnimation"]; 
          // _backView is a view behind the mapView 
          [_backView removeFromSuperview]; 
         } 
        } 
    ];      
    _isCurled = (!_isCurled); 
} 
+0

mal que debería haber dicho iOS 6. No es el modal de curl de página que estoy buscando, es la capacidad de levantar la vista del mapa con un gesto panorámico, como la forma en que se accede a la configuración de mapas en iOS 6. – NSTJ

Cuestiones relacionadas