У меня есть страница входа с именем «LoginViewController». У меня есть информационная кнопка на этой странице. Если я нажимаю на нее, я хочу показать некоторую информацию о моем приложении. Также я хочу представить эту информационную страницу с помощью флип-анимации.
Код для создания информационной кнопки:
infoButton = [UIButton buttonWithType:UIButtonTypeInfoLight];
infoButton.frame = CGRectMake(285, 425, 30, 30);
infoButton.backgroundColor = [UIColor clearColor];
[infoButton addTarget:self
action:@selector(displayInfoView)
forControlEvents:UIControlEventTouchUpInside];
Если я нажму кнопку информации, будет вызван метод displayInfoView. Там я могу показать UIView, чтобы отобразить некоторую информацию. Я прав?
Для флип-анимации я использовал этот код ...
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.8];
[UIView setAnimationTransition:([loginPageView superview] ? UIViewAnimationTransitionFlipFromLeft : UIViewAnimationTransitionFlipFromRight)
forView:mainView
cache:YES];
if ([infoView superview]) {
[infoView removeFromSuperview];
[mainView addSubview:loginPageView];
}
else {
[loginPageView removeFromSuperview];
[mainView addSubview:infoView];
}
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];
[UIView commitAnimations];
Здесь loginPageView - это представление входа в систему, которое содержит кнопку информации. infoView - это представление, которое содержит информацию о приложении. mainView - это общепринятая точка зрения, которой придерживается нынешняя точка зрения.
Теперь моя проблема в том, что вместо того, чтобы показывать UIView, могу ли я показать другой класс контроллера представления, нажимая кнопку информации? Помните, что действие переворота отлично работает с UIView. Но когда я пытаюсь использовать UIViewController, возникают проблемы.
Может ли кто-нибудь предложить мне, как показать UIViewController (в моем приложении мне нужно показать AboutViewController) при нажатии кнопки информации с эффектом переворота?