Приложение с вкладками Xcode - добавление новой вкладки - PullRequest
25 голосов
/ 31 октября 2011

Я работаю с Xcode 4.2.Я начал работать с приложением с вкладками, и теперь я хочу добавить 3-й и 4-й вкладки в раскадровку своего приложения.Как я могу добавить это?Я пытаюсь использовать это, но я не могу.:( У меня не было хороших учебников для этого.

Кто-нибудь знает, как это сделать?

Я прошел эту ссылку , но мне нужнодобавьте еще 2 вида с вкладками к первому виду.

Обновление:

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

Ответы [ 7 ]

57 голосов
/ 01 ноября 2011

Просто добавьте еще два контроллера вида в свой проект, а затем управляйте перетаскиванием из контроллера панели вкладок в контроллеры представления, чтобы создавать переходы к ним.Убедитесь, что вы выбрали «Relationship-viewControllers», когда список всплывет.Вкладки будут добавлены автоматически.

Вам нужно перейти в меню и нажать «Новый файл», затем класс Objective-C и, наконец, выбрать подкласс UIViewController.Назовите его, а затем он добавит файлы .h и .m.Теперь в вашей раскадровке обязательно измените класс каждой вкладки на имя вашего файла.Вот и все.

27 голосов
/ 28 сентября 2015

Для тех, кто изучает наглядность:

Создание нового проекта приложения с вкладками

enter image description here

Что даст вам такую ​​раскадровку:

enter image description here

Добавить новый View Controller

enter image description here

Добавить элемент панели вкладок

enter image description here

Подключение к контроллеру представления вкладок

Удерживая нажатой клавишу «Control», перейдите из контроллера представления вкладок в новый контроллер представления, чтобы открыть меню.

enter image description here

Вот и все. Посмотрите следующее видео для более подробной информации.

8 голосов
/ 06 сентября 2012

Я использую Xcode 4.3.3, и мне удалось добавить дополнительные вкладки, выполнив следующие действия:

  1. Создание приложений с вкладками.
  2. Убедитесь, что утилиты открыты.Выберите View Controller из объектов и перетащите в *. Раскадровку.
  3. Нажмите и удерживайте клавишу управления.Нажмите на Tab Controller и переместите курсор на новый View Controller, который вы добавили.Когда вы отпустите кнопку мыши и управляющую клавишу, вы увидите всплывающее окно, которое отображает 4 варианта: - Отношения - Просмотр контроллера, Push, Modal и Custom.
  4. Если вы выберите опцию Отношения - Просмотр контроллера, Xcode автоматически добавляетдругая вкладка и соединяет контроллер вкладок с окном, которое вы добавили.

С этого момента довольно просто изменить текст / изображения вкладки.

6 голосов
/ 09 июля 2012

Чтобы программно добавить третий контроллер вида в стандартное приложение iOS с вкладками:

  1. Перейдите к File -> New -> File, выберите класс Objective-C, введите «ThirdViewController» для класса, выберите «UIViewController» под подклассом параметра. Установите флажок «С XIB для интерфейса пользователя».

  2. Перейдите на новый XIB и добавьте метку или другие объекты по вашему выбору.

  3. В AppDelegate.m импортируйте новый класс, добавив #import "ThirdViewController.h" к файлу импорта.

  4. Все еще в AppDelegate.m, в методе didFinishLaunchingWithOptions создайте объект UIViewController для третьего представления (следуйте формату для первых двух) и добавьте третий контроллер представления в tabbarcontroller двумя строками ниже: self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, viewController3, nil]; .

  5. Сохраните и запустите ваш проект.

Метод didFinishLaunchingWithOptions должен выглядеть следующим образом:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    UIViewController *viewController1 = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil];
    UIViewController *viewController2 = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];
    UIViewController *viewController3 = [[ThirdViewController alloc] initWithNibName:@"ThirdViewController" bundle:nil];
    self.tabBarController = [[UITabBarController alloc] init];
    self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, viewController3, nil];
    self.window.rootViewController = self.tabBarController;
    [self.window makeKeyAndVisible];
    return YES;
}
2 голосов
/ 27 сентября 2012

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

0 голосов
/ 20 марта 2018

Если вы нажмете на маленькую панель заголовка, где вы увидите три иконки:

enter image description here

Затем вы можете копировать и вставлять, чтобы не только создать новый ViewContoller в StoryBoard, но и захватить все автоматические макеты, которые вы могли кропотливо настроить для этого оригинального ViewController . Это ЕДИНСТВЕННЫЙ способ захвата известных мне параметров автоматической разметки.

В конечном итоге вы можете создать несколько шаблонов StoryBoard таким образом, чтобы они просто сидели на диске. У меня есть ViewController для «входа в систему», который я копирую и вставляю, например, для своих приложений.

А для новых людей InterfaceBuilder ломает многие парадигмы приложения для рисования объектов и противоречит сам по себе. Объекты внутри можно щелкнуть на контроллере вида и ввести наркотики, как и ожидалось; иметь многоугольные ручки для изменения размера и т. д., как и ожидалось. ViewControllers не реагируют на щелчок мышью. Вместо этого вы должны нажать и удерживать эту кнопку заголовка, чтобы перетащить ее.

0 голосов
/ 01 ноября 2011

Что я понимаю, по этому я даю ответ.Должен быть «Контроллер панели вкладок». Когда вы извлечете этот «Контроллер панели вкладок», вы найдете контроллер навигации.Просто скопируйте это и прошлое в этот контроллер панели вкладок.

...