У меня есть UIView, который служит контейнером для 2 табличных просмотров. У меня есть две кнопки, которые управляют тем, как данные загружаются в эти таблицы. В основном, когда одна кнопка нажали, в UIView выскальзывает, чтобы показать TableView, связанные с этой кнопкой, и когда другая кнопка получает постучала мне это нужно, чтобы:cocoa touch пытается отложить анимацию uiview до того, как она снова выскочит
- близко
- скрыть 1-й TableView
- затем вновь вывести 2-й TableView
- затем UIView скользит обратно
Вот что у меня есть
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationDelay:0.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
if(!isTableOpen){
[self.fighterTableView setHidden:YES];
[self.matchTableView setHidden:NO];
isTableOpen = YES;
viewTableContainer.frame = CGRectMake(0, 0, 352, 700);
[self.view bringSubviewToFront:viewTableContainer];
[UIView commitAnimations];
}else{
//isTableOpen = NO;
viewTableContainer.frame = CGRectMake(-352, 0, 352, 700);
[UIView commitAnimations];
[self.fighterTableView setHidden:YES];
[self.matchTableView setHidden:NO];
viewTableContainer.frame = CGRectMake(0, 0, 352, 700);
[UIView commitAnimations];
}
Проблема здесь в commitanimations в инструкции else, которую я пытаюсь установить скрытые свойства, а затем снова выворачивает uiview. То, что происходит, это просто скрывает и скрывает табличное представление, но анимация никогда не бывает. Я чувствую, что мне нужно использовать задержку, но Idk как, если нет более достойного способа справиться с этим?
Мысли?
Вы можете изменить время задержки, основываясь на вашем требовании. – m4n1c
Будет ли этот метод выполняться после части «commitAnimations»? Imma попробует это как можно скорее после работы. – gdubs
также, dont я должен удалить viewtablecontainer.frame из if else, так как он уже находится в анимационном режиме? или нет? – gdubs