Tengo dos UIScrollViews, uno horizontal, uno vertical, ambos de dos páginas cada uno (como en, el horizontal tiene dos páginas de ancho y el vertical tiene dos páginas). La vista de desplazamiento horizontal está en la vertical. Intento imitar el diseño de Calcbot, donde puedes desplazarte hacia la izquierda/derecha para ver los botones y arriba/abajo para ver el historial.UIScrollView salta hacia abajo cuando se tocó por primera vez
Sin embargo, cuando se carga la vista, la vista de desplazamiento horizontal es aproximadamente 100 píxeles más alta de lo que debería ser. Luego, cuando lo toco y empiezo a moverlo un poco, salta/salta a la posición correcta y se queda allí. ¿Cómo lo hago aparecer correctamente desde el principio?
Aquí está mi código para viewDidLoad:
-(void)viewDidLoad {
horizontalScrollView.pagingEnabled = YES;
verticalScrollView.pagingEnabled = YES;
horizontalScrollView.contentSize = CGSizeMake(horizontalScrollView.bounds.size.width * 2, horizontalScrollView.bounds.size.height); // 2 pages wide.
verticalScrollView.contentSize = CGSizeMake(verticalScrollView.bounds.size.width, verticalScrollView.bounds.size.height * 2);
horizontalScrollView.delegate = self;
verticalScrollView.delegate = self;
[verticalScrollView addSubview:horizontalScrollView];
[verticalScrollView setContentOffset:CGPointMake(0, 640)];
[self.view addSubview:verticalScrollView];
horizontalScrollView.frame = CGRectMake(0, 540, 320, 460);
}
Gracias.
Acabo de cambiar el contentOffset a 380 y funcionó. Gracias. –
En un escenario ligeramente diferente, esto también solucionó mi problema de saltos. Tenía un UIScrollView solo verticalmente con pagingEnabled de algunas pruebas que estaba haciendo antes. Cada vez que me desplazaba hacia abajo y luego tocaba en cualquier lugar, volvía a saltar. Lo revirtió y todo estuvo bien. – patridge
Hola @patridge ¿Puedes explicar tu comentario? Tengo un problema similar. – Mystery