• ベストアンサー

Androidで常時表示されるツールバー?の作り方

はじめまして。 わたくしは先日からAndroidの勉強をし始めたのですが、分からない事があるので投稿させて頂きました。 Androidアプリでよく見かける画面の下部に常時表示されているツールバー?を作成したいと思っております。(添付データAのようなもの) 試しにTabHostとTabWidgetを使用して添付画像Bを作りました。画面端からの余白が気になりますが、作成方法としてはこのような方法でよろしいのでしょうか。 漠然とし過ぎた質問で申し訳ありませんが、コメントを頂けると幸いです。 環境はandroid2.3.3です。

質問者が選んだベストアンサー

  • ベストアンサー
noname#177743
noname#177743
回答No.1

おそらく、普通はButtonを下部にLinearLayoutで横一列に配置するような形で実装しているんじゃないかと思います。中央のコンテンツ部分の高さを自動調整することで常に下部にバーが表示されるようにするわけですね。 TabHostを使ったやり方は、もちろん間違いではないのですが、これはAndroid 4.0からdeprecatedになっていますから、今後は使われなくなります。それをわかった上で現行機種のみ対象にアプリを作るのであれば問題ないでしょう。2.3.3を利用しているとのことですから、その環境であれば全く問題ありません。 ただ、Android 3.0からActionBarというのが追加になっており、3.0以降はこちらを使うのが一般的になっています。これは、それまでオプションメニューとして組み込まれていたものをバーの形で強化したUIです。マニフェストファイルで、<activity>にandroid:uiOptions="splitActionBarWhenNarrow"というのを追加すると、スマートフォンの縦長画面では、メニューが自動的に画面下部にアイコンバーとして表示されるようになります。タブ表示のスタイルもサポートしています。 おそらく「最近のアプリでよく見る」というのは、このアクションバーを使ったUIのことでしょう。ただしこれは3.0以前は使えないので、それ以前のバージョンではこのアクションバーをエミュレートするような形で独自に実装されているように思えます。 また、ツールバーというのを、「タブを使って複数のActivityを切り替える」という目的で使うのであれば、更に違った実装が現在は推奨されています。Fragmentと呼ばれるAPIを利用したもので、これの導入により、例えば画面サイズが大きいとタブ切り替え表示になり、画面が小さい場合にはメニューをクリックしたらアクティビティ画面になるといった2画面方式に切り替わる、というような「スマートフォンとタブレットのUI切り替え」のような処理が実装できます。 とりあえず、現在のTabHost利用のスタイルはAndroid 4.0以降が一般に普及するまで使われ続けると思います。ですので、そのやり方で覚えておいて今は問題ありません。が、おそらく1~2年もすれば4.0以降が大半になっているでしょうから、そうなったときにはActionBar方式に切り替えることになるのでこちらの使い方も勉強しておくと良いでしょう。また、Fragmentは今後必須の実装となりますので、タブ切り替え表示についてはこちらも少しずつ学習されることをお勧めします。

Oninya
質問者

お礼

chiiba_kun様、 ご回答ありがとうございます。 なるほど、ActionBarという機能があるんですね。 調べてみたところご教授頂いたとおりAndroid2.3.3でも使用出来るみたいですが、学びはじめて日も浅いのでまずはTabHostを利用して作成し、基本的な部分を固めていこうかと思います。 とても分かりやすく丁寧に回答して頂き感謝しております、ありがとうございました。

関連するQ&A