[iPhone SDK] UINavigationBar にボタンを追加する

公開日: : iPad, iPhone ,

uinavigationbar.png

自作アプリでUIWebViewを使ってWebを表示しているが、戻る・進むボタンをUINavigationBarに追加したかったので調べてみた。
UIToolBarにボタンを追加する方法は以前書いたが、今回はTabBarを使ってしまっているので、ツールバーは使えない。(バーが2本になってしまってかっこわるい)
このため、UINavigationBarに追加したかった。
How to add a button to UINavigationBar? – Stack Overflow
View Controller Programming Guide for iOS: Navigation Controllers(iOS Reference Library)
を参考にして書いてみた。

	// Back/Forward ボタンをNavigationBarに追加する
	UISegmentedControl *segmentedControl = [[[UISegmentedControl alloc] initWithItems:
											[NSArray arrayWithObjects:
											 [UIImage imageNamed:@"left.png"],											 
											 [UIImage imageNamed:@"right.png"],											 
											 nil]]autorelease];
	
	[segmentedControl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];
	segmentedControl.frame = CGRectMake(0, 0, 200, 32);
	segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
	segmentedControl.momentary = YES;	
	UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] initWithCustomView:segmentedControl];			
	self.navigationItem.rightBarButtonItem = segmentBarItem;

最初はこれは便利 iPhoneプログラミングUIKit詳解リファレンスのP94を参考に、UINavigationBarのtitleViewに自前のViewを入れようと思ったが、面倒そうなのであきらめて、navigationItem.rightBarButtonItem に UISegmentedControl を入れる方法でやってみた。
とりあえずそれなりに使えるものになったのでこれで良しとする。
rightBarButtonItem にはまた別なボタンを置きたい、となるとこの方法は使えないのだが。

iPhoneプログラミングUIKit詳解リファレンス
iPhoneプログラミングUIKit詳解リファレンス 所 友太 京セラコミュニケーションシステム株式会社

リックテレコム 2010-01-12
売り上げランキング : 6896

おすすめ平均 star
starアグレッシブでなおかつ真摯な本だと思います
star長く使える一冊
star机の上に備えておきたい良書の一冊です

Amazonで詳しく見る by G-Tools

関連記事

no image

[iOS] iOSでToast

iOSでAndroidのToast的な、数秒間メッセージを表示して自動的に消える部品を探していたのだ

記事を読む

no image

Apple iPod touch 第4世代 8GB MC540J/A 注文

Retinaディスプレイとジャイロセンサーを使ってみたかったので、数時間迷った末 Appleのオンラ

記事を読む

ようやくAppStore に Submit

@ITの 日本人がつまずかないためのiPhone開発ポイント を読みながらAppStoreにアプリ公

記事を読む

US Unlocked にてiPad 購入、無事入手

日本の発売まで待つか結構悩んだけれども、なるべく早く自作アプリの動作確認をしておきたいということもあ

記事を読む

no image

Amazon Web ServicesあらためAmazon Product Advertising APIのObjective-Cでの利用

去年はC#でAmazon Web Serviceを使ったデモアプリを作成していたのだが、今年はiPh

記事を読む

no image

Application tried to present a nil modal view controller on target 問題

MFMailComposeViewController を使ってメール送信ダイアログを表示しようとし

記事を読む

no image

達人出版会の本をKindleで読んでみる(Windows編)

最近話題の「当事者」の時代の電子書籍版(パブー)や、エキスパート Objective-C プログラミ

記事を読む

no image

薄い iPad2用ケース eggshell for iPad2 TUN-PD-000079 購入 2011/06/27

不具合報告があったので、当初予定がなかったiPad2を購入。 それはまた別に書くとして、まずは一緒に

記事を読む

Pebble x テニスセンサーSSE-TN1

2014年のはじめにテニスセンサーの記事を書いたが、当時はまだセンサー対応ラケットが少なく、最近よう

記事を読む

no image

見たかった映画「ソーシャル・ネットワーク」を見る複数の方法

かなり見たかったけれどもふたごが小さくてとても見に行けなかった映画、「ソーシャル・ネットワーク」がも

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Ember Mug 2のACアダプタをUSB Type-Cに変えてみた

冬になると活躍する Ember Mug 2 の充電器は付属のACアダ

Wi-Fi6Eルータ TP-Link AXE5400購入

Wi-Fi6E を試してみたくなり、TP-Link AXE5

児童手当 認定請求書申請 2024 「請求者が養育をする18歳に達する日以降の最初の3月31日までの子の数」とは?

2024年に受給していない人には手紙が届くらしい。 電子申請も

Vision Proアプリ開発本 8/24、8/26に発売

Vision Proアプリ開発入門 P400が 8/24 に発売、V

Developer Strap が日本でも購入可能に

USアカウントでしか購入できなかった Vision Pro 用 De

→もっと見る

PAGE TOP ↑