Используя мой проект FRLayeredNavigationController на GitHub, вы можете легко создавать пользовательские интерфейсы, очень похожие на приложение Twitter iPad.Об этом также есть сообщение в блоге .
Если вам интересно, как это работает, просто посмотрите на код, он с открытым исходным кодом ;-).По сути, он использует композицию UIViewController
, представленную в iOS 5. Он управляет несколькими слоями, которые вы предоставляете.Перемещение слоев инициируется UIPanGestureRecognizer
и некоторой логикой, когда перемещать какой слой.Он выглядит и чувствует себя очень хорошо благодаря хорошей поддержке iOS-анимации. API
FRLayeredNavigationController
очень похож на UINavigationController
, поэтому его легко использовать :-).Примеры из моего EuroCopaInfo проекта, в котором используется FRLayeredNavigationController:
В файле StadiumsViewController.m
:
[self.layeredNavigationController pushViewController:wvc inFrontOf:self maximumWidth:YES animated:YES];
С AppDelegate.m
:
InfoCategoriesViewController *icvc = [[InfoCategoriesViewController alloc] init];
FRLayeredNavigationController *lnc = [[FRLayeredNavigationController alloc] initWithRootViewController:icvc configuration:^(FRLayeredNavigationItem *item) {
item.nextItemDistance = 49;
}];
self.window.rootViewController = lnc;
[self.window makeKeyAndVisible];
Также смотрите демонстрационные видео / скриншоты: