1

2つの異なるアクティビティで2つの異なるタブホストを使用するAndroidアプリケーションを作成していますが、それを区別するのに問題があり、2番目のタブホストでアクティビティを入力するとアプリが停止します。

私の最初のアクティビティのコードは次のとおりです。

private TabHost tHost_;
private TabSpec tSpec_;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_mypls_shared);
        setTitle("Workout Scheduler");
        tHost_ = (TabHost) findViewById(R.id.tabhost);
        tHost_.setup();
        tSpec_ = tHost_.newTabSpec("tag1");
        tSpec_.setContent(R.id.myTab);
        tSpec_.setIndicator("My Workouts");
        tHost_.addTab(tSpec_);
        tSpec_ = tHost_.newTabSpec("tag2");
        tSpec_.setContent(R.id.shareTab);
        tSpec_.setIndicator("Shared Workouts");
        tHost_.addTab(tSpec_);

    }

私のxmlファイルでは、タブホストのandroididは次のように指定されています。

<TabHost
        android:id="@+id/tabhost"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true" >

2番目のファイルのコードは次のとおりです。

private TabHost tHost_;
private TabSpec tSpec_;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_three_by3);
    setTitle("Workout Scheduler");
    tHost_ = (TabHost) findViewById(R.id.tabhost);
    tHost_.setup();

}

xmlファイルは次のようになります。

<TabHost
        android:id="@android:id/tabhost"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/textView1" >

ただし、2番目のアクティビティを入力すると、アプリが停止します。タブホストには次のような名前を付ける必要があることを私は知っています。

android:id="@+id/tabhost"

しかし、によって参照される2つのタブホストがある場合はどうすればよいR.id.tabhostですか?

4

0 に答える 0