ナビゲーションアイテム/バーに2つ追加するか、それらをaに追加してから、SegmentedControlをアイテムに追加するUIViewController
ことにより、タイトルの右側に[追加]ボタンと[ゴミ箱]ボタンの両方があるを作成したいと思います。これは可能ですか?はいの場合、それはどのように最もよく達成されますか?UIBarButtonItems
UISegmentedControl
2724 次
2 に答える
1
ナビゲーションアイテムに複数のボタンを追加するには、それらをサンプルコードでラップUIToolbar
します。
于 2010-08-31T07:54:07.613 に答える
0
私は似たようなことをしました。2つのUIButtonを持つUIViewサブクラスを作成することにより、ナビゲーションアイテム/バーに2つの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 に答える