Я бы хотел, чтобы панель навигации скрывалась медленнее, чем обычно.Изменение продолжительности анимации
Я попытался следующие, но когда скрывается, она исчезает мгновенно вместо анимации из (вид снизу делает анимацию правильно):
[UIView beginAnimations:@"hideNavBar" context:nil];
[UIView setAnimationDuration:2.0];
[self.navigationController setNavigationBarHidden:value];
[UIView commitAnimations];
Если бы я суррогат:
[self.navigationController setNavigationBarHidden:value animated:YES];
Тогда использует обычную продолжительность вместо моей медленной версии. Hmmph.
Я даже пытался получить действительно коварен и сделать:
CGFloat *durationRef = &UINavigationControllerHideShowBarDuration;
CGFloat oldDuration = *durationRef;
*durationRef = 2.0;
[self.navigationController setNavigationBarHidden:value animated:YES];
*durationRef = oldDuration;
Что привело к EXE _ _ BAD ACCESS на уступки. Есть идеи?
В конце концов я решил, что reimplemebting UINavController не стоит небольшой выигрыш в элегантности. Спасибо за ответ, хотя. –
Я не думаю, что это работает. –
Почему бы и нет? Вы всегда можете захватить слои на экране и начать прикреплять анимации. Для справки, я сделал это во время экспериментов, но я никогда не отправлял производственный код, который делает это. –