Я сделал нечто подобное. Я добавил две кнопки UIB в элемент / панель навигации, создав подкласс UIView, в котором есть две кнопки UIBiew. Затем вы можете сделать что-то вроде этого:
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
, и все хорошо.
Кроме того, я передаю идентификатор цели в настраиваемой команде инициализации, чтобы упростить ориентацию кнопок в представлении. Так что для 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;
}