У меня есть набор из трех UITableViews в UIView, расположенных горизонтально, два из которых видны на экране в любой момент времени, а другой - за пределами экрана. Я пытаюсь анимировать изменение позиции, где при нажатии кнопки крайний левый стол скользит по экрану влево, а затем два других переключаются, чтобы заполнить позиции.анимация UIView при нажатии кнопки - не видна с первой попытки
Проблема заключается в том, что если я попытаюсь анимировать более чем одну из таблиц сразу, ничего не произойдет при первой нажатии кнопки. Но во второй прессе все работает нормально. Если я попытаюсь оживить только одну таблицу, то она работает при первом нажатии. Мой код кнопки обработчик ниже:
- (IBAction)buttonPressed:(id)sender{
CGRect newUITableView1Frame = self.originalUITableView1Frame;
newUITableView1Frame.origin.x = newUITableView1Frame.origin.x - newUITableView1Frame.size.width;
if(!makeSubButtonPressed){
self.makeSubButtonPressed = YES;
[self.makeSubButton setTitle:@"Choose Team Lineup" forState:UIControlStateNormal];
[UIView animateWithDuration:0.5
delay:0.1
options:UIViewAnimationOptionCurveEaseOut
animations:^{
self.UITableView1.frame = newUITableView1Frame;
self.UITableView2.frame = originalUITableView1Frame;
self.UITableView3.frame = originalUITableView2Frame;
}
completion:^(BOOL finished){NSLog(@"Animation Finished");}];
}
В методе ViewDidLoad:
self.originalUITableView1Frame = self.UITableView1.frame;
self.originalUITableView2Frame = self.UITableView2.frame;
На первой пресс, «Анимация Закончено» всегда печатается в консоли, так что код выполняется. Я также пробовал отдельные анимационные блоки для каждой анимации, но результат тот же.
Я не могу понять, что происходит. Какие-либо предложения?
EDIT: Возможно, я должен добавить, что я использую раскадровки для этого, и все UITableViews добавлены там.
К сожалению, это опечатка в моем посте - это на самом деле установить рамки для третьей таблицы, как вы предложили. – aritchie