Я работал над созданием приложения с вкладками внизу, но с возможностью переключения видов с моими собственными ссылками на перьях, которые отображает приложение tabBar.
Я пытался найти пример этого, но xcode 4.2 (на ios5.0 или более ранней версии) не создает mainwindow.xib, поэтому мне пришлось искать способ создания этой программы следующим образом:
#import "AppDelegate.h"
#import "HomeViewController.h"
#import "ViewListViewController.h"
#import "ShareViewController.h"
#import "FriendsViewController.h"
#import "SettingsViewController.h"
@implementation AppDelegate
@synthesize window = _window;
@synthesize tabBarController = _tabBarController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
UIViewController *homeViewController = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
UIViewController *viewListViewController = [[ViewListViewController alloc] initWithNibName:@"ViewListViewController" bundle:nil];
UIViewController *shareViewController = [[ShareViewController alloc] initWithNibName:@"ShareViewController" bundle:nil];
UIViewController *friendsViewController = [[FriendsViewController alloc] initWithNibName:@"FriendsViewController" bundle:nil];
UIViewController *settingsViewController = [[SettingsViewController alloc] initWithNibName:@"SettingsViewController" bundle:nil];
self.tabBarController = [[UITabBarController alloc] init];
[self.tabBarController setDelegate:self];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:homeViewController, viewListViewController, shareViewController, friendsViewController, settingsViewController, nil];
self.window.rootViewController = self.tabBarController;
[self.window makeKeyAndVisible];
return YES;
}
Этот код в моем AppDelegate.m отлично работает, и я могу отлично переключаться между вкладками. Проблема, с которой я столкнулся, заключается в том, что я буду добавлять графику на страницы и использовать их в качестве кнопок для переключения между представлениями для добавления / редактирования / удаления данных из базы данных (отдельная проблема, которую мне придется научиться делать дальше).
Большинство примеров, которые я нашел, запускают приложение либо с tabBar, либо с помощью uiNavigation с UIViews для переключения между ними. Мне еще предстоит найти пример, который наглядно покажет, как делать то, что я ищу. Является ли мой подход неправильным для создания приложения tabBar в качестве базового шаблона для этого, или это можно сделать? Каждая вкладка может иметь несколько представлений, которые выполняют функции, но мне нужно иметь возможность создавать и переключаться между ними в рамках структуры tabBar.
спасибо заранее,
Серебряный тигр
- UPDATE: -
После прочтения теперь я думаю, что aUINavigationController - это не то, что я ищу. Мне нужен способ создания настраиваемой кнопки, позволяющей мне переключать представления, поскольку кнопки, которые я буду использовать в своем контенте, будут либо графическими, либо прозрачными поверх графического фона. Можно ли использовать пользовательские кнопки, чтобы выдвигать новые представления, при этом оставляя панель вкладок видимой всегда? Моя структура будет такой, как показано ниже
Home
Add
Edit
delete
ViewList - Single page to view list
Share - Single page to send emails / invites
Friends
Add
Edit
Delete
Settings - Single page for app settings/preferences
так что, по сути, у меня было бы только две вкладки, на которых я бы выдвигал новые представления, но UINavigationController, похоже, не подходит к методу, который я использую, так как я не использую одну полосу вверху для переключения видов.