More Related Content Similar to Интуит. Разработка приложений для iOS. Лекция 4. Controllers Similar to Интуит. Разработка приложений для iOS. Лекция 4. Controllers (12) More from Глеб Тарасов (20) Интуит. Разработка приложений для iOS. Лекция 4. Controllers8. Как реагировать на
нажатие кнопки
UIButton?
[button addTarget:self
action:@selector(method)
forControlEvents:UIControlEventTouchUpInside];
14. ViewController *c = [[ViewController alloc] init];
!
UINavigationController *nc = [[UINavigationController alloc]
initWithRootViewController:c];
!
self.window.rootViewController = nc;
15. - (void)buttonTapped
{
MyViewController *my = [[MyViewController alloc] init];
[self.navigationController pushViewController:my animated:YES];
}
- (void)backTapped
{
[self.navigationController popViewControllerAnimated:YES];
}
Показать контроллер
Скрыть контроллер
18. FirstViewController *vc1 = [[FirstViewController alloc] init];
SecondViewController *vc2 = [[SecondViewController alloc] init];
ThirdViewController *vc3 = [[ThirdViewController alloc] init];
ForthViewController *vc4 = [[ForthViewController alloc] init];
!
UITabBarController *t = [[UITabBarController alloc] init];
t.viewControllers = @[ vc1, vc2, vc3, vc4 ];
self.window.rootViewController = t;
20. - (void)buttonTapped
{
DataViewController *vc = [[DataViewController alloc] init];
[self presentViewController:vc
animated:YES
completion:nil];
}
Показать контроллер
- (void)backTapped
{
[self dismissViewControllerAnimated:YES
completion:nil];
}
Скрыть контроллер
22. - (void)showPopover
{
UIViewController *vc = [[UIViewController alloc] init];
vc.view.frame = CGRectMake(0, 0, 100, 200);
UIPopoverController *p = [[UIPopoverController alloc]
initWithContentViewController:vc];
[p presentPopoverFromRect:self.button.frame
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionUp
animated:YES];
self.popover = p;
}
33. Домашнее задание
• составить список всех экранов и
продумать переходы между ними
• для каждого экрана создать контроллер
• реализовать переходы между
контроллерами
• вместо списков пока сделать одну-две
кнопки