[Résolu] app météo d'ios, décélérer vers nouveau point d'origine?
Salut,
EDIT: en fait c'était assez simple, il fallait juste placer une animation dans le willBeginDecelerate.
j'aimerais refaire l'appli météo d'ios, celle où l'on a un scroll view horizontal, au-dessus d'un autre vertical, lorsque l'on descend suffisamment, ou montent au départ, les deux scrollview changent de point d'origine. Comment faire ça?
L'animation de décélération va jusqu'au nouveau point.
Dans mon code, la scroll view horizontal change son origine grâce à une méthode de delegate sur la scroll horizontal : quand on change le contentSize du vertical, l'origine de la frame horizontale change aussi. Quand on arrive tout en haut, l'horizontal ne bouge plus, et la verticale passe derrière (donc j'ai préféré séparer les deux scroll et choisir ce delegate: la frame de l'horizontale suit le contentSize de la verticale).
Donc, le problème à régler est de faire décélérer ces deux scroll vers un nouveau point d'origine, auriez-vous une idée? Faut-il refaire l'effet de décélération soi-même, avec une sorte de timer?
Voilà la méthode de delegate du vertical :
//delegate du vertical scroll
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
CGPoint offset = self.horizScroll.frame.origin;
offset.y = -scrollView.contentOffset.y;
if ( offset.y > 0 ){
[self.horizScroll setFrame:CGRectMake(offset.x,
offset.y,
self.horizScroll.frame.size.width,
self.horizScroll.frame.size.height)];