У меня есть страница входа в систему с именем "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
, могу ли я показать другой класс контроллера представления при нажатии кнопки информации? Помните, что действие flip отлично работает с UIView
. Но когда я пытаюсь использовать UIViewController
, это создает проблемы.
Может кто-нибудь предложить мне, как показать UIViewController (в моем приложении, мне нужно показать AboutViewController
), когда вы нажимаете кнопку информации с эффектом flip?