Java/Android/応用編/タブ画面の表示

Top > Java > Android > 応用編 > タブ画面の表示

android応用編?

タブ画面の表示

TabActivity?クラスを使ったタブ画面(下の画面)の作成を解説します。

android_tab.jpg

TabSampleActivity?クラス

	public class TabSampleActivity extends TabActivity {
	   @Override
	   protected void onCreate(Bundle savedInstanceState) 
	   {
	      super.onCreate(savedInstanceState);
	      TabHost tabHost = getTabHost();        
	      LayoutInflater.from(this).inflate(R.layout.tabs1, tabHost.getTabContentView(), true);
	      tabHost.addTab(tabHost.newTabSpec("tab1").
	         setIndicator(getResources().getString(R.string.tabs_1_tab_1_name)) //タブ表示名 
	         .setContent(R.id.view1));                // 表示するビューを指定
	      tabHost.addTab(tabHost.newTabSpec("tab2")
	         .setIndicator("tab2")
	         .setContent(R.id.view2));
	      tabHost.addTab(tabHost.newTabSpec("tab3")
	         .setIndicator("tab3")
	         .setContent(R.id.view3));
	   }
	}

getTabHost?メソッドで、TabHost?オブジェクト取得して、addTabメソッドでタブを追加します。

layout/tabs1.xml

	<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
	   android:layout_width="fill_parent"
	   android:layout_height="fill_parent">
	   <!--①タブ1のレイアウト定義-->
	   <LinearLayout
	      android:id="@+id/view1"
	      android:orientation="vertical"
	      android:layout_width="fill_parent"
	      android:layout_height="fill_parent"
	   >
	      <EditText
	         android:layout_width="fill_parent"
	         android:layout_height="wrap_content"
	         android:textSize="18sp"
	         android:autoText="true"
	         android:capitalize="sentences"
	         android:text="tab1"/>
	   </LinearLayout>
	   <!--②タブ2のレイアウト定義-->
	   <TextView android:id="@+id/view2"
	      android:background="@drawable/red"
	      android:layout_width="fill_parent"
	      android:layout_height="fill_parent"
	      android:text="tab2"/>
	   <!--③タブ3のレイアウト定義-->
	   <TextView android:id="@+id/view3"
	      android:background="@drawable/green"
	      android:layout_width="fill_parent"
	      android:layout_height="fill_parent"
	      android:text="tab3"/>
	</FrameLayout>

①、②、③でそれぞれのタブのレイアウト ビューを定義します。

values/strings.xml

	<resources>
	    <string name="hello">Hello World, TabSample!</string>
	    <string name="app_name">TabSample</string>
	    <string name="tabs_1_tab_1_name">tab1</string>
	</resources>

使用する文字列を定義する。

values/colors.xml

	<resources>
	   <drawable name="red">#7f00</drawable>
	   <drawable name="green">#7700ff00</drawable>
	</resources>

使用するカラーを定義する。

このように、非常に簡単に作ることができます。
※なお、タブ画面を作る方法には、TabActivity?クラスを使わずに作る方法も存在します。

android開発のご相談は、こちらまでお問い合わせください。

最終更新日: 2009-09-26 (土) 16:24:01 (2798d)

添付ファイル: fileumayahara.gif 630件 [詳細] fileandroid_gousei.jpg 606件 [詳細] fileandroid_tab.jpg 1253件 [詳細]

このページをブックマーク:

このページのURL(コピペして利用下さい):

TOP