2010-12-20 4 views
0
にリンクします

アクティビティにリンクするタブを作成するには、以下のクラスをどのように取得できますか?それはそれだがタブはどんな活動にもリンクしていない。私は別の活動を読み込むためのタブが必要ですか?Androidカスタムタブはアクティビティ

import android.app.TabActivity; 
import android.content.Context; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.widget.TabHost; 
import android.widget.TabHost.TabSpec; 
import android.widget.TextView; 
import android.widget.TabHost.TabContentFactory; 

public class CustomTabActivity extends TabActivity { 
    TabHost mTabHost = null; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     mTabHost = (TabHost) findViewById(android.R.id.tabhost); 
     // mTabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider); 
     setupTab(new TextView(this), "Tab 1"); 
     setupTab(new TextView(this), "Tab 2"); 
     setupTab(new TextView(this), "Tab 3"); 
    } 

    private void setupTab(final View view, final String tag) { 
     View tabview = createTabView(mTabHost.getContext(), tag); 
     TabSpec setContent = mTabHost.newTabSpec(tag).setIndicator(tabview) 
       .setContent(new TabContentFactory() { 

        public View createTabContent(String tag) { 
         return view; 
        } 
       }); 
     mTabHost.addTab(setContent); 
    } 

    private static View createTabView(final Context context, final String text) { 
     View view = LayoutInflater.from(context) 
       .inflate(R.layout.tabs_bg, null); 
     TextView tv = (TextView) view.findViewById(R.id.tabsText); 
     tv.setText(text); 
     return view; 
    } 
} 
+0

タブの使い方を尋ねていますか?ちょうどこれのためのチュートリアルの束があります。 – Falmarri

+0

実際、Thtisはカスタマイズされたタブです。私はアクティビティではなくビューに設定する必要があります...私はアクティビティにタブをリンクする必要があります。私は試みたhost.setContent(新しいインテント(this、Headlines.class) – Noah

答えて

0

私は、そうしない見解

活動にsetConentなくする必要があります。タブにアクティビティを取り込むことから何も得られません。実際には、これを行うと良いことよりも害が大きくなります。ヒープスペース、スタックスペース、およびCPU時間を無駄に浪費します。

不要な場合は、実行時にタブコンテンツを定義する必要はありません。たとえば、here is a sample projectは、TabHostと同じレイアウトのタブコンテンツを定義します。

関連する問題