0

重複の可能性:
カスタムUINavigationBarのbackButton?

左側のUIBarButtonItemとしてカスタムボタンを追加したいと思います。私は次のコードを使用しました

UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"menu.png"] style:UIBarButtonItemStylePlain target:self action:@selector(showMenu:)];
self.navigationBar.leftBarButtonItem = menuButton;  

これはボタンを表示しませんが、クリックするとセレクターが正しく呼び出されます。

私も次の方法を試しました:

UIButton *menuButton = [UIButton buttonWithType:UIButtonTypeCustom];
[menuButton setImage:[UIImage imageNamed:@"menu.png"] forState:UIControlStateNormal];
[menuButton addTarget:self action:@selector(showMenu:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *barMenuItem = [[UIBarButtonItem alloc] initWithCustomView:menuButton];
self.navigationItem.leftBarButtonItem = barMenuItem;  

これはボタンとクリック可能を示していますが、ボタンの幅はデフォルトの戻るボタンの幅と同じです。ボタンの画像の幅がデフォルトの戻るボタンの画像よりも小さくなっています。そのため、画像を幅の長いボタンの中央に配置します。

どんな助けでも大歓迎です。

サヤリ

4

1 に答える 1

0

簡単な方法は、新しいビューを作成してボタンを追加し、このビューを左のボタンに追加するだけです。これは適切に機能し、質問があればコメントしてください。

于 2012-11-29T13:49:48.787 に答える