2

我想要一个UIViewController在标题右侧有一个 Add 和一个 Trash 按钮,可以通过将两个添加UIBarButtonItems到导航项/栏或将它们添加到 aUISegmentedControl然后将 SegmentedControl 添加到项目。这可能吗?如果是,如何实现最好?

4

2 回答 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 回答