我想要一个UIViewController
在标题右侧有一个 Add 和一个 Trash 按钮,可以通过将两个添加UIBarButtonItems
到导航项/栏或将它们添加到 aUISegmentedControl
然后将 SegmentedControl 添加到项目。这可能吗?如果是,如何实现最好?
问问题
2724 次
2 回答
1
UIToolbar
您可以通过将多个按钮包装在示例代码中来向导航项添加多个按钮。
于 2010-08-31T07:54:07.613 回答
0
我做过类似的事情。我通过创建一个包含两个 UIButton 的 UIView 子类向导航项/栏添加了两个 UIButton。然后,您可以执行以下操作:
MyUIViewSubclass *tempview = [[[MyUIViewSubclass alloc] initWithFrame:CGRectMake(234,4,84,30)] autorelease];
UIBarButtonItem newButton = [[[UIBarButtonItem alloc] initWithCustomView:tempview] autorelease];
[self.navigationItem setRightBarButtonItem:newButton animated:NO];
您所要做的就是在其中布置按钮MyUIViewSubclass
,您就很好了。
此外,我在自定义的 init 命令中传递目标的 ID,以便更轻松地定位视图中的按钮。所以MyUIViewSubclass
代替initWithFrame
,我有这样的东西:
- (id)initWithFrame:(CGRect)aRect andTarget:(id)newTarget {
if (self = [super initWithFrame:aRect]) {
UIButton *editbtn = [[[UIButton alloc] initWithFrame:fframe] autorelease];
[editbtn addTarget:newTarget action:@selector(MBEdit) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:editbtn];
[self setFirstbutton:editbtn];
[editbtn release];
UIButton *newbtn = [[[UIButton alloc] initWithFrame:fframe] autorelease];
[newbtn addTarget:newTarget action:@selector(MBNew) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:newbtn];
[self setSecondbutton:newbtn];
[newbtn release];
}
return self;
}
于 2010-01-06T22:19:19.923 回答