Создание программного обеспечения NavigationController (Swift)

Я пытаюсь повторить работу над своим программным обеспечением. (Без использования раскадровки)

Я почти закончил, за исключением того, что контроллер навигационной системы вручную.

Я занимаюсь некоторыми исследованиями, но я не могу найти документацию об этом вручную. (Я начал делать приложение как приложение с одним представлением)

В настоящее время у меня только 1 диспетчер представлений. И, конечно же, appDelegate

Контроллер навигации будет использоваться на всех страницах приложения.

Если кто-то может помочь мне или отправить ссылку на какую-то соответствующую документацию для этого программно, мы будем очень благодарны.

РЕДАКТИРОВАТЬ:

Я забыл упомянуть, что это в Свифт.

Попробуйте это обновление

self.window = UIWindow(frame: UIScreen.mainScreen().bounds) var nav1 = UINavigationController() var mainView = ViewController(nibName: nil, bundle: nil) //ViewController = Name of your controller nav1.viewControllers = [mainView] self.window!.rootViewController = nav1 self.window?.makeKeyAndVisible() 

И для Swift 3 :

 self.window = UIWindow(frame: UIScreen.main.bounds) let nav1 = UINavigationController() let mainView = ViewController(nibName: nil, bundle: nil) //ViewController = Name of your controller nav1.viewControllers = [mainView] self.window!.rootViewController = nav1 self.window?.makeKeyAndVisible() 

Его работа для меня прекрасна … попробуй, конечно .. ты получишь успех …

Я бы рекомендовал начать с AppDelegate с этим скелетом:

1) используйте, где бы вы ни были!

2) UINavigationController имеет свойство rootViewController .

 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { let viewController = ViewController(nibName: nil, bundle: nil) //ViewController = Name of your controller let navigationController = UINavigationController(rootViewController: viewController) self.window = UIWindow(frame: UIScreen.mainScreen().bounds) self.window?.rootViewController = navigationController self.window?.makeKeyAndVisible() return true } 

Попробуй это . Он поможет вам использовать навигационный контроллер.

Программное создание UINavigationController в iOS

AppDelegate.h

  #import <UIKit/UIKit.h> #import "LoginViewController.h" @interface AppDelegate : UIResponder <UIApplicationDelegate> @property (strong, nonatomic) UIWindow *window; @property (strong,nonatomic) UINavigationController *navigationController; @property (strong,nonatomic) LoginViewController *loginVC; @end 

AppDelegate.m

  #import "AppDelegate.h" #import "LoginViewController.h" @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for customization after application launch. self.loginVC = [[LoginViewController alloc]initWithNibName:nil bundle:nil]; self.loginVC.title = @"Login Page"; self.navigationController = [[UINavigationController alloc]initWithRootViewController:self.loginVC]; self.window.rootViewController = self.navigationController; [self.window makeKeyAndVisible]; } 

Затем, когда вы хотите нажать другой контроллер вида, просто используйте следующий код, чтобы перейти к другому контроллеру представления.

 - (IBAction)pushMyProfileView:(id)sender { self.myProfileVC = [[MyProfileViewController alloc]initWithNibName:nil bundle:nil]; [appDelegate.navigationController pushViewController:self.myProfileVC animated:YES]; } 
  self.window = UIWindow(frame: UIScreen.main.bounds) let storyboard = UIStoryboard(name: "Main", bundle: nil) let storyboard_Secondary = UIStoryboard(name: "Secondary", bundle: nil) var initialViewController = UIViewController() let aUser = CommonMethods.loadCustomObject("\(Constants.kUserProfile)") as? User if aUser?.respCode == 1 { initialViewController = storyboard_Secondary.instantiateViewController(withIdentifier: "MainTabVC") UIApplication.shared.statusBarStyle = .lightContent let navigationController = UINavigationController(rootViewController: initialViewController) navigationController.isNavigationBarHidden = true self.window!.rootViewController = navigationController self.window!.makeKeyAndVisible() } 
  • Программирование циклов UIViewControllers с помощью ios и раскадровки
  • Нажмите на UIViewController из текущего элемента управления представлением
  • Двойной щелчок на вкладке UITabBarControllers переходит в корень навигационного контроллера
  • Контроллеры навигации с одинаковым корневым представлением
  • Как сделать анимацию Segue горизонтальной без UINavigationController?
  • Невозможно установить название UINavigationItem
  • Текущий контроллер просмотра в раскадровке с навигационным контроллером - Swift
  • Показать панель навигации в Child View Controller
  • CABasicAnimation сбрасывается при прокрутке края с помощью UINavigationController
  • Задержка при использовании метода instantiateViewControllerWithIdentifier, но не выполнение функции SigueWithIdentifier?
  • Кнопка подтверждения на UINavigationController
  • Давайте будем гением компьютера.