【发布时间】:2014-10-01 17:27:59
【问题描述】:
我对 iOS 应用程序开发比较陌生。目前我正在开发一个带有标签栏的小应用程序。我面临的问题是我希望每个选项卡都有不同的导航项。我尝试了很多东西,但没有奏效。我正在使用原生 iOS 语言进行编程。
在我的应用程序中,我有一个 AppDelegate。在我的 AppDelegate 中有一小段代码用于设置我的 mainViewController:
- (void)setupOverlordViewController
{
MainViewController *rootVC = [[MainViewController alloc] initWithNibName:nil bundle:nil];
UINavigationController *navVC = [[UINavigationController alloc] initWithRootViewController:rootVC];
self.window.rootViewController = navVC;
}
我正在 MainViewController 中设置标签:
- (void)viewDidLoad
{
UIViewController *tabView1 = [[Tab1ViewController alloc] init];
UIViewController *tabView2 = [[Tab2ViewController alloc] init];
UIViewController *tabView3 = [[Tab3ViewController alloc] init];
NSMutableArray *tabViewControllers = [[NSMutableArray alloc] init];
[tabViewControllers addObject:tabView1];
[tabViewControllers addObject:tabView2];
[tabViewControllers addObject:tabView3];
[self setViewControllers:tabViewControllers];
tabView1.tabBarItem =
[[UITabBarItem alloc] initWithTitle:NSLocalizedString(@"TabView1", nil)
image:[UIImage imageNamed:@"tabView1.png"]
tag:1];
tabView2.tabBarItem =
[[UITabBarItem alloc] initWithTitle:NSLocalizedString(@"TabView2", nil)
image:[UIImage imageNamed:@"tabView2.png"]
tag:2];
tabView3.tabBarItem =
[[UITabBarItem alloc] initWithTitle:NSLocalizedString(@"TabView3", nil)
image:[UIImage imageNamed:@"tabView3.png"]
tag:3];
}
每个View(tabView1、tabView2、tabView3)都有自己的布局,在View的ViewDidLoad方法中设置。当我想通过在 ViewDidLoad 方法中添加导航栏来添加导航按钮时,但似乎无法添加按钮。添加它们的唯一方法是直接在我的 MainViewController 中,但是我无法将导航栏按钮设置为不同的 foreach 选项卡。
将按钮添加到我的导航栏的代码如下:
UIBarButtonItem *btnNewRecord = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(btnNewRecord)];
NSArray *rightItems = [NSArray arrayWithObjects:btnNewRecord, nil];
[self.navigationItem setRightBarButtonItems:rightItems];
谁能解释一下我做错了什么?
【问题讨论】:
-
@P Griep 这是我的答案。请检查stackoverflow.com/questions/18142952/…
-
@P Griep,你能解决你的问题吗?
标签: ios objective-c ios7 uinavigationcontroller uinavigationitem