0

以下のコードを使用して、ナビゲーション バーの右バーボタンをカスタマイズします。

UIBarButtonItem *bb = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"btn_daohangrightbar_1"] style:UIBarButtonItemStylePlain target:self action:@selector(clickRightBtnEvent:)];
[self.navigationItem setRightBarButtonItem:bb];

しかし、私は以下のような結果を得ます:

ここに画像の説明を入力

カスタム barButton とシステムのデフォルト ボタンの両方が表示されるようです。参考までに、カスタム ボタンを追加する前にボタンが表示されません。デフォルト ボタンを非表示にして、カスタム ボタンのみを表示するにはどうすればよいですか?

4

2 に答える 2

2

提供された画像を使用してカスタム ボタンを作成し、customview でバー ボタンを初期化し、そのボタンをカスタム ビューとして提供することができます。

UIImage *image = [UIImage imageNamed:@"myImage"];
CGRect imageFrame = CGRectMake(0,0,image.size.width,image.size.height);

UIButton *btn = [[UIButton alloc] initWithFrame:imageFrame];
[btn setBackgroundImage:image forState:UIControlStateNormal];
[btn addTarget:self action:@selector(clickRightButtonEvent:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *bb = [[UIBarButtonItem alloc] initWithCustomView:btn];
[[self navigationItem] setRightBarButtonItem:bb];
于 2013-06-27T02:39:45.473 に答える
1

initWithCustomViewfromUIBarButtonItemを含む a とともに使用しUIImageViewますUIImage

于 2013-06-27T02:36:58.397 に答える