2011-08-08 8 views
5

estoy mostrando una UIViewController de la siguiente manera:UIModalTransitionStylePartialCurl media página


MyViewController *myVc = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil]; 
[myVc setModalTransitionStyle:UIModalTransitionStylePartialCurl]; 
[self presentModalViewController:myVc animated:YES]; 

Si estoy dibujando los MyViewController 's ver la transición afecta sólo la mitad de una página (Lo que yo quiero).

En mi caso estoy dibujo MyViewController la vista completa 's por lo que la transición se afecta a toda la vista

Si estoy dibujando sólo la mitad de una vista de la transición hace efecto en la mitad de la pantalla, pero me todavía tiene 'área muerta' que se muestra y no se dibuja.

enter image description here

Mi pregunta es ¿cómo puede la transición tenga efecto sólo para la mitad de la pantalla (como en la imagen), pero aún así ser capaz de extraer toda la vista por lo que incluso si la transición muestra sólo la mitad de la pantalla, todo el área mostrada se dibujará

+0

no veo una pregunta aquí ... – memmons

+0

¿Ha tenido algún problema con la barra de herramientas mientras se implementa la página de características rizo –

Respuesta

0

¿Cuál es el problema aquí? Rellene el contenido en el modalView de tal forma que se utilice el área visible. Si no me equivoco, el efecto modalPageCurl no tiene la opción de establecer la extensión del curl (o la cantidad de pantalla que debe ocupar).

por lo que sugiero se salta este enfoque & enfoque en tratar de cubrir (o utilizar) la mayor cantidad pantalla está disponible ...

+1

El PO hizo no pregunto cómo usar modalView de esa manera ... me preguntaron qué me interesa saber también ... dado que 'UIModalTransitionStylePartialCurl' detecta qué parte de la vista subyacente está en uso y luego se enrolla apropiadamente, ¿cómo podemos cubrir, u oscurecer, etc., el área debajo de su aleta. – Jann

-2
MyViewController * myVc = [[MyViewController alloc] initWithNibName:nil bundle:nil]; 
[UIView beginAnimations:@"flipPage" context:NULL]; 
[UIView setAnimationDuration:2]; 
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; 
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES]; 
[self.view addSubview:myVc.view]; 
[UIView commitAnimations]; 
4

iOS sólo se utiliza a los niños de primer grado de la UIView para decidir dónde para colocar el rizo parcial de la página. Eso le permite agregar una vista secundaria de segundo nivel con un marco de p. Ej. (0, -50, 320, 100) que se desliza en el área que llama el "área muerta".

1

Creo que los carteles aquí y en los hilos relacionados tienen problemas porque están tratando de decorar el fondo de la vista subyacente utilizando otra vista, como una vista de imagen. La forma correcta de establecer un fondo, y que no afectará a la curvatura de página, es establecer realmente el fondo.

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    //BG 
    self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"StitchTileBG.png"]]; 
} 

Dejar el uso de vistas y para tales elementos de la interfaz de usuario real