2011-07-21 6 views
0

まず、Androidには初めてですが、JavaやAndroidではなく、UNIX、Windowsではさまざまなプログラミング経験があります。 私は3つのタブを持つタブを表示しようとしていますが、それぞれは異なるレイアウトファイルを持っています(動作します)。 「空の」テンプレートの表示に取り組んで、ユーザーが設定を1つに(つまり、共有設定で)指定すると、XMLファイルからデータが取得されます。tabhostに表示されたときにテキストビューのテキストを動的に変更

私の問題は、populateXMLCharacter関数が(ブレークポイントを使って)決して呼び出されないということです。 tabアクティビティは常に ""を表示します。これはstring.xmlのstrigです。 実際にoncreate関数にブレークポイントを置くことは決して呼び出されません。 IveはonResumeでpopulateXMLCharacterへの呼び出しを試みましたが、決して呼び出されません。

イムは、タブにそのための呼び出しを考えて:

Resources res = getResources(); // Resource object to get Drawables 
    TabHost tabHost = getTabHost(); // The activity TabHost 
    TabHost.TabSpec spec; // Resusable TabSpec for each tab 

    // Do this and the same for all tabs 
    spec = tabHost.newTabSpec("Description").setIndicator("Description", 
    res.getDrawable(R.drawable.android)).setContent(R.layout.tab_harp_description); 
    tabHost.addTab(spec); 

は私が意図を使用する必要がありますか?私はレイアウトが、この場合に別々の機能(harpCSDescription.javaで作成されたと考えられ、次いで、これは活性がtabhostに挿入することが可能

他の機能: パブリッククラスharpcsDescriptionアクティビティを拡張{

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView (R.layout.tab_harp_description); 
} 
//@Override 
protected void onResume() 
{ 
    // NOW WE ADD DATA TO THE TEMPLATE 
    populateXMLCharacter(); 
} 

public void populateXMLCharacter() 
{ 

アイブ氏は次のようにインテントを使用してみましたが、いずれかのブレークポイントに到達する前に、それは単にクラッシュします。

http://developer.android.com/resources/tutorials/views/hello-tabwidget.html

いくつかのいずれかが私を導いてくださいすることができ私はタブが作成された後に取得されるデータを持つアクティビティを作成するために何をすべきでしょうか?

答えて

1

私はあなたが意図を持っていると思います。

Intent intent = new Intent(this, MyActivity.class);

、その後、タブ仕様書き込み中:

tabSpec = tabHost.newTabSpec("name").setIndicator(this.getString(R.string.name)).setContent(intent)

が続いMyActivityクラスでは、あなたがレイアウトを指定することができますし、タブに活動を添付するには、タブのホストで次のように書きますXMLデータをロードしてonCreate()メソッドのタブを設定します。各タブごとに異なるアクティビティーを使用できます。

+0

ありがとうございました。なんらかの理由で、インテントをやり直してみました!今でもクラッシュしていますが、プログラム内でクラッシュします。 ああ、私はonResume関数で次のコードを省略したことを忘れましたか? super.onResume(); :) – user802479

+0

Hmmm ... LogCatとは何ですか?問題がどこにあるかを判断するのに役立ちます。私はあなたが 'super.onResume()'を放棄したことに気付かず、もっと注意を払っていたはずです! – Pikaling

+0

それが目的でした。また、私は大きな問題は、super.onResumeコードを含めることを忘れていたと思います! – user802479

関連する問題