[iPhone SDK] UINavigationBar にボタンを追加する
自作アプリで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詳解リファレンス | |
![]() |
所 友太 京セラコミュニケーションシステム株式会社
リックテレコム 2010-01-12 おすすめ平均 |
関連記事
-
-
[iOS] iOSでToast
iOSでAndroidのToast的な、数秒間メッセージを表示して自動的に消える部品を探していたのだ
-
-
Apple iPod touch 第4世代 8GB MC540J/A 注文
Retinaディスプレイとジャイロセンサーを使ってみたかったので、数時間迷った末 Appleのオンラ
-
-
ようやくAppStore に Submit
@ITの 日本人がつまずかないためのiPhone開発ポイント を読みながらAppStoreにアプリ公
-
-
US Unlocked にてiPad 購入、無事入手
日本の発売まで待つか結構悩んだけれども、なるべく早く自作アプリの動作確認をしておきたいということもあ
-
-
Amazon Web ServicesあらためAmazon Product Advertising APIのObjective-Cでの利用
去年はC#でAmazon Web Serviceを使ったデモアプリを作成していたのだが、今年はiPh
-
-
Application tried to present a nil modal view controller on target 問題
MFMailComposeViewController を使ってメール送信ダイアログを表示しようとし
-
-
達人出版会の本をKindleで読んでみる(Windows編)
最近話題の「当事者」の時代の電子書籍版(パブー)や、エキスパート Objective-C プログラミ
-
-
薄い iPad2用ケース eggshell for iPad2 TUN-PD-000079 購入 2011/06/27
不具合報告があったので、当初予定がなかったiPad2を購入。 それはまた別に書くとして、まずは一緒に
-
-
Pebble x テニスセンサーSSE-TN1
2014年のはじめにテニスセンサーの記事を書いたが、当時はまだセンサー対応ラケットが少なく、最近よう
-
-
見たかった映画「ソーシャル・ネットワーク」を見る複数の方法
かなり見たかったけれどもふたごが小さくてとても見に行けなかった映画、「ソーシャル・ネットワーク」がも