2012-01-26 46 views
1

グラフを2つのタブがあるアプリケーションに表示しようとしています。 onCreate()メソッドのメインクラスは、対応するクラスに関連付けられた2つのタブをインスタンス化します。 2番目のタブはグラフを表示する必要があります。チャートのクラスはアクティビティではなく、インテントを返すメソッドを持ち、アクティビティクラスに表示されます。インテントが画面全体に表示される

私の問題は、チャートタブをタップすると、チャートが2つのタブボタンの下だけでなく、画面全体に表示されることです。私は何を修正すべきですか?ここ

が短い構造である:

メインクラス:

public class CurrencyTabActivity extends TabActivity { 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     Resources res = getResources(); 
     TabHost tabHost = getTabHost(); 
     TabHost.TabSpec spec; 
     Intent intent; 

     intent = new Intent().setClass(this, CurrencyListActivity.class); 

     spec = tabHost.newTabSpec("currency").setIndicator("", 
       res.getDrawable(R.drawable.ic_tab_currency)) 
       .setContent(intent); 
     tabHost.addTab(spec); 

     intent = new Intent().setClass(this, GraphActivity.class); 
     spec = tabHost.newTabSpec("graph").setIndicator("", 
       res.getDrawable(R.drawable.ic_tab_graph)) 
       .setContent(intent); 
     tabHost.addTab(spec); 

     tabHost.setCurrentTab(0); 
    } 
} 

チャートを提示しなければならないクラス:

public class GraphActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     Intent intent; 
     TemperatureChart tc = new TemperatureChart(); 
     intent = tc.execute(this); 
     startActivity(intent); 
    } 
} 

チャートクラス:

public class TemperatureChart{ 
//................ 
public Intent execute(Context context){ 
//................................... 
} 
} 

答えて

1

The TemperatureCharあなたがTabHostに追加していないため、タブの外側にActivityとして表示されます。あなたは単にActivityを起動しています...なぜあなたはTemperatureChartをアクティビティにしてTabHostに追加できませんか?

+0

ありがとう、私はそれを変更しました、それは動作します:) – MMMM

関連する問題