0

我有一个带有两个视图的导航控制器。第一个视图是一个带有 TableView 的 ViewController,第二个视图是带有一些 UILabel 和一个 UIWebView 的 UIView。当从 TableView 中选择一个单元格时,导航控制器会推送到第二个视图。

我已经向导航控制器和一些按钮添加了 UIToolBar。

我的问题是当导航控制器推送到第二个视图(UIView)时,我的 UIToolBar 出现但没有按钮。

我想显示不同的按钮或从第二个视图中删除 UIToolBar。我想我需要在 AppDelegate 中做一些事情,我只是不确定是什么以及如何做。

这是我的 XIBS 的外观:

MainWindow
- App Delegate
- Window
- Navigation Controller
-- Navigation Bar
-- ToolBar
-- View Controller 
--- Bar Button Item
--- Navigation Item 
---- Bar Back Item

ViewController
-TableView

DetailView
-View
--Web View
--Label
--Label

代码:

AppDelgate.h

@interface AppDelegate : UIResponder <UIApplicationDelegate>
{
 UIWindow *window;
 UINavigationController *navigationController;
 UIToolbar *toolBar;  
}

@property (nonatomic, strong) IBOutlet UIWindow *window;
@property (nonatomic, strong) IBOutlet UINavigationController *navigationController;
@property (nonatomic, strong) IBOutlet UIToolbar *toolBar;

@end

AppDelegate.m

@implementation AppDelegate

@synthesize window;
@synthesize navigationController;
@synthesize toolBar;

- (void)applicationDidFinishLaunching:(UIApplication *)application {    

// Override point for customization after app launch    

[window addSubview:[navigationController view]];

[window makeKeyAndVisible];

}

- (void)applicationWillTerminate:(UIApplication *)application {
// Save data if appropriate
}

@end

任何帮助,将不胜感激。谢谢

4

2 回答 2

2

您必须为加载到堆栈中的每个 View 指定 toolBarItems。所以,

-(void)viewDidLoad{
    [self setToolbarItems:myArrayOfItems];
    //do this in every view controller
    //other code.
}
于 2012-04-18T04:26:35.107 回答
0

我不能清楚地告诉你。我提出这个假设。如果您想在 nextview 的顶部栏中添加按钮,则不要使用工具栏。您可以在导航栏本身添加按钮。您可以使用 addsubview 方法添加按钮。使用 initwithframe 初始化 UIbutton。然后将其添加为导航控制器的子视图。[navigationcont addsubview:button];

于 2012-04-18T05:09:33.057 回答