将 UIToolBar 添加到 UITableViewController 的最简单方法是什么?我依赖于编辑功能,所以我不能轻易将 UITableViewController 更改为 UIViewController.
What is the simplest way to add UIToolBar to UITableViewController? I'm depending on edit functionality, so I can't change UITableViewController to UIViewController easily.
没问题,UITableViewController
是UIViewController
的子类.碰巧的是,在 iPhone OS 3.0 中,任何 UIViewController
(和子类) 都可以与 UINavigationController
一起工作,以提供上下文感知工具栏.
No problem at all, UITableViewController
is a subclass of UIViewController
. And it so happens that in iPhone OS 3.0 any UIViewController
(and subclasses) can work in conjunction with a UINavigationController
to provide a context aware toolbar.
为了使其工作,您必须:
In order for this to work you must:
UINavigationController
来包含所有需要工具栏的视图控制器.toolbarsItems
属性.UINavigationController
to contain all your view controllers that needs a toolbar.toolbarsItems
property of the view controller that wants a toolbar.这几乎就像设置视图控制器的标题一样简单,并且应该以相同的方式完成.很可能通过覆盖 initWithNibName:bundle:
初始化程序.举个例子:
This is almost as easy as as setting the view controller's title, and should be done the same way. Most probably by overriding the initWithNibName:bundle:
initializer. As an example:
-(id)initWithNibName:(NSString*)name bundle:(NSBundle*)bundle;
{
self = [super initWithNibName:name bundle:bundle];
if (self) {
self.title = @"My Title";
NSArray* toolbarItems = [NSArray arrayWithObjects:
[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
target:self
action:@selector(addStuff:)],
[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSearch
target:self
action:@selector(searchStuff:)],
nil];
[toolbarItems makeObjectsPerformSelector:@selector(release)];
self.toolbarItems = toolbarItems;
self.navigationController.toolbarHidden = NO;
}
return self;
}
您还可以使用 setToolbarItems:animated:
而不是分配给 toolbarItems
属性,以动态添加和删除工具栏项.
You can also use setToolbarItems:animated:
instead of assigning to the toolbarItems
property, to add and remove toolbar items in an animated fashion on the fly.
这篇关于将工具栏添加到 UITableViewController的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!