Как изменить контроллер начального представления

Как изменить контроллер начального представления

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

Содержание

Допустим, вы создаете приложение, которое требует от пользователей входа в систему. Конечно, сначала вы захотите открыть контроллер представления входа. Однако было бы бессмысленно открывать тот же контроллер каждый раз, когда пользователь открывает приложение. В идеале вы хотите, чтобы ваше приложение отправляло пользователя на экраны аутентификации.

С помощью языка программирования и IDE, которые мы покажем вам здесь, вы сможете сделать это гораздо проще. В этой статье мы познакомим вас с языком программирования Swift 4. Сначала мы дадим вам несколько подсказок относительно этого нового языка программирования, а затем объясним самый простой способ изменить контроллер начального представления.

Что такое Swift 4?

Swift 4 — это язык программирования, используемый для разработки приложений для OS X и iOS. Он создан компанией Apple Inc.

Что делает этот язык программирования таким особенным, так это тот факт, что он вобрал в себя лучшие концепции программирования из таких языков, как C, C++ и C #. Все это доступно в библиотеках Swift без обычных ограничений совместимости с C.

Еще одна причина, по которой этот язык программирования используется для большинства современных приложений для iOS, заключается в том, что он использует среду выполнения системы Objective C. Это позволяет программам, написанным на Swift 4, работать на различных платформах, таких как OS X 10.8, iOS 6 и т.д.

Синтаксис Swift 4 очень похож на синтаксис Objective C. Поэтому, если вы знакомы с Objective C (C++, C sharp), вы без труда освоите Swift 4.

Какую IDE следует использовать для программирования на Swift 4?

Судя по комментариям опытных разработчиков, Xcode кажется «любимчиком фанатов», когда дело доходит до написания текстов на Swift 4. Кроме того, Xcode IDE отлично подходит для целей данной статьи, поскольку обладает функциями, позволяющими легко настраивать конфигурацию приложения.

Другие IDE либо не имеют таких возможностей, либо не так просты в освоении.

Xcode IDE довольно гибкая, продвинутая и очень простая в использовании. Эта среда позволяет создавать мощные приложения для iPad, iPhone, Mac, Apple TV и Apple Watch. Вы можете скачать эту среду здесь .

Изменение начального контроллера представления в Xcode

Получив все ключевые ингредиенты (Swift 4 и Xcode), пришло время показать вам, как изменить начальный контроллер представления вашего приложения.

Мы сделаем это, создав новый проект в Xcode с нуля, поэтому вы также узнаете, как настроить среду. Конечно, если вы уже создали проект, вы все равно можете следовать этому руководству.

Предлагается два способа, как это сделать, поэтому попробуйте тот, который покажется вам наиболее простым, и посмотрите, подойдет ли он для вашего приложения. Мы начнем с первого.

Вот как следует создавать новый проект в Xcode:

  1. Откройте IDE Xcode и войдите в конфигурацию Create a New Project.
  2. Выберите приложение Single View из окна Choose a Template for Your New Project.
    Как изменить контроллер начального представления
  3. Введите название вашего проекта в поле Product Name и нажмите Next.
    Как изменить контроллер начального представления
  4. Выберите место, где вы будете хранить файлы проекта.
  5. Нажмите Create.

После того, как вы выполните последний шаг, Xcode отобразит начальные файлы, которые были созданы автоматически. Эти файлы будут созданы в левой части экрана (если вы используете конфигурацию IDE по умолчанию).

Вы должны иметь AppDelegate.swift, ViewController.swift, Main.storyboard и assets слева. Обратите внимание, что ViewController.swift также был создан автоматически. Это ваш начальный контроллер представления, который будет отображаться первым при запуске приложения.

Теперь давайте создадим новый контроллер представления и назначим его начальным.

  1. Щелкните на файле Main.storyboard. Вы сможете увидеть, как выглядит ваш начальный контроллер представления в левой части экрана.
    Как изменить контроллер начального представления
  2. Чтобы создать новый контроллер представления, просто перетащите его на экран; эта опция находится в правой нижней части экрана. После того как вы щелкнули и перетащили его на экран, вы заметите, что рядом с оригинальным контроллером представления появился дополнительный контроллер представления.
    Как изменить контроллер начального представления
  3. Щелкните на верхней метке первого (оригинального) контроллера представления, на которой написано View Controller. После щелчка на этой надписи появятся три опции.
    Как изменить контроллер начального представления
  4. Выберите первую опцию слева, которая покажет вам параметры конфигурации этого контроллера представления.
  5. Щелкните на значке стрелки, расположенном в правой части экрана.
  6. Отключите флажок Is Initial View Controller.
    Как изменить контроллер начального представления

Сняв флажок Is Initial View Controller, вы убедитесь, что исходный контроллер представления не появится при запуске приложения.

Проделайте те же шаги для созданного вами контроллера представления, только на этот раз установите флажок Is Initial View Controller. И вуаля! Вы установили дополнительный контроллер представлений в качестве начального в Xcode.

Программное изменение начального контроллера представлений

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

Прежде чем начать, необходимо убедиться, что все ваши контроллеры имеют свои собственные идентификаторы Storyboard ID. Также необходимо проверить, не установлен ли в настройках некоторых контроллеров флажок Is Initial View Controller.

После этого выполните следующие действия:

  1. Очистите значение Main Storyboard File Base Name вашей программы. Это значение находится в настройках вашего приложения. Перейдите на вкладку Info.
  2. Очистите значение Main Interface на вкладке General вашего приложения.
  3. В делегате вашего приложения application:didFinishLaunchingWithOptions: method : создайте новый Initial View Controller.

В качестве примера мы будем использовать код Сапана Дивакара:

self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds];

UIStoryboard * storyboard = [UIStoryboard storyboardWithName:@»Main» bundle:nil];

if ([self isUserLoggedIn]) {

// Показать приборную панель

self.window.rootViewController = [storyboard instantiateViewControllerWithIdentifier:@»SDDashboardViewController»];

} else {

// Login

self.window.rootViewController = [storyboard instantiateViewControllerWithIdentifier:@»SDLoginViewController»];

}

[self.window makeKeyAndVisible];

Альтернативным способом может быть работа через UINavigationController. Чтобы попробовать этот альтернативный метод, инстанцируйте правильный контроллер представления где-нибудь в application:didFinishLaunchingWithOptions: (делегат) и подтолкните его к UINavigationController.

Вот как это можно сделать:

var navigationController: UINavigationController? = (self.window?.rootViewController as? UINavigationController)

var storyboard = UIStoryboard(name: «Main», bundle: nil)

if self.isUserLoggedIn() {

// Показать приборную панель

navigationController?.pushViewController(storyboard.instantiateViewController(withIdentifier: «SDDashboardViewController»), animated: false)

}

else {

// Войти

navigationController?.pushViewController(storyboard.instantiateViewController(withIdentifier: «SDLoginViewController»), animated: false)

}

Enjoy Your Mobile App Development Adventure

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

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

YouTube видео: Как изменить контроллер начального представления


Вопросы и ответы по теме: “Как изменить контроллер начального представления”

Как добавить новый контроллер?

В Обозреватель решений щелкните правой кнопкой мыши папку “Контроллеры”, а затем выберите команду “Добавить”, а затем “Контроллер”. В диалоговом окне “Добавить шаблон " щелкните контроллер MVC 5 — пустой, а затем нажмите кнопку “Добавить”. Назовите новый контроллер HelloWorldController и нажмите кнопку “Добавить”.

Что значит тонкий контроллер?

4.23.1. Тонкие контроллеры Смысл термина “тонкий контроллер” в том, что, как правило, в ваших классах контроллера вы размещаете только код, который: обращается к данным запроса пользователя ( $_GET , $_POST , $_FILES и другие PHP-переменные);

Что такое контроллер в Ларавел?

Контроллеры — это классы, принимающие пользовательский ввод и взаимодействующие с моделями, библиотеками и видами (представлениями, «views»). В общем случае они запрашивают у модели данные и передают его виду, который формирует страницу, передаваемую клиенту.

Как создать контроллер C#?

Самый простой способ создать новый контроллер — щелкнуть правой кнопкой мыши папку Controllers в окне Обозреватель решений Visual Studio и выбрать пункт меню “Добавить”, “Контроллер” (см. рис. 1).

Как изменить контроллер в игре?

Самый простой вариант — игра просто не умеет самостоятельно переключаться между устройствами, и способ управления нужно выбрать в настройках. Для этого в настройках необходимо найти пункт вроде «Управления» или «Устройства ввода» и выбрать там «Контроллер» или «Геймпад» вместо клавиатуры.

Как настроить контроллер на андроид?

**Как настроить геймпад**1. На передней части геймпада нажмите и удерживайте кнопку питания . Через три секунды мигнут четыре индикатора. 2. Откройте главный экран Android TV, прокрутите вниз и выберите “Настройки” . 3. В разделе “Пульты и аксессуары” нажмите “Добавить устройство” . 4. Выберите геймпад.