18

Stack Overflow の投稿や他の Web サイトのチュートリアルを見ましたが、使用方法がわかりませんTabHost。誰かが私に説明して、チュートリアルへのリンクを送ってくれませんか?

4

2 に答える 2

71

コンセプト タブホスト

ここに画像の説明を入力

  1. ManiActivity では、TabActivity を拡張します

    public class MainActivity extends TabActivity {
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        //setContentView(R.layout.activity_main);
    
        TabHost mTabHost = getTabHost();
    
        mTabHost.addTab(mTabHost.newTabSpec("first").setIndicator("First").setContent(new Intent(this  ,FirstActivity.class )));
        mTabHost.addTab(mTabHost.newTabSpec("second").setIndicator("Second").setContent(new Intent(this , SecondActivity.class )));
        mTabHost.setCurrentTab(0);
    
    
    }
    }
    
  • このアクティビティでは、レイアウト "activity_main.xml" を使用しないでください。

  • タブホスト mTab​​Host = getTabHost(); メインタブの作成です。

  • mTabHost.newTabSpec("first") は、タブスペック ID "first" を作成します。

  • setIndicator("First") は、タイトル タブにテキスト "First" を作成します。

  • setContent(new Intent(this ,FirstActivity.class )) は FirstActivity.class ( FirstActivity.java ) のコンテンツを使用します

  • mTabHost.addTab(....) は spectab をメインタブに追加します

  • mTabHost.setCurrentTab(0) は、開始ページのデフォルトのタブです。

FirstActivity.java

public class FirstActivity extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView( R.layout.first_layout );
}

}

SecondActivity.java

public class SecondActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView( R.layout.second_layout );
}
}
  • 「R.layout.first_layout」は、first_layout.xml の内容です

  • 「R.layout.second_layout」は、second_layout.xml の内容です

AndroidManifest.xml で、サンプル xml にアクティビティ名「.FirstActivity」と「.SecondActivity」を追加します。

ここに画像の説明を入力

終了!!!!!

ここに画像の説明を入力

于 2012-07-24T09:17:29.180 に答える