0

私の Tools.java :

protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.tabtools);

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

// TabDados
intent = new Intent().setClass(this, ToolDadosTubuCirc.class);
spec = tabHost.newTabSpec("dados")
        .setIndicator("Dados", res.getDrawable(R.drawable.icondados))
        .setContent(intent);
tabHost.addTab(spec);
// TabLegenda
intent = new Intent().setClass(this, ToolLegendaTubuCirc.class);
spec = tabHost
        .newTabSpec("legenda")
        .setIndicator("Legenda",
                res.getDrawable(R.drawable.iconlegenda))
        .setContent(intent);
tabHost.addTab(spec);
// TabCalcular
intent = new Intent().setClass(this, ToolCalcularTubuCirc.class);
spec = tabHost
        .newTabSpec("calcular")
        .setIndicator("Calcular",
                res.getDrawable(R.drawable.iconcalcular))
        .setContent(intent);
tabHost.addTab(spec);
// TabCorrente
tabHost.setCurrentTab(0);}}

私のtabtools.xml

<TabHost
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@+layout/rowLog"
android:layout_below="@+layout/rowLine" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:padding="5dp" >

    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp" />

</LinearLayout>

最初のタブはクラス「ToolDadosTubuCirc.java」と呼ばれ、このアクティビティには次のコードがあります。

package br.com.mobile4you.engtools;

import android.app.Activity;
import android.os.Bundle;

public class ToolCalcularTubuCirc extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.toolcalculartubucirc);

    }
}

**ファイル onClickListener "ToolDadosTubuCirc.java" 内でイベントを作成する方法は? 「計算」タブをクリックすると、「dados」タブに入力する必要があるテストデータを実行する関数を作成する必要があります。

3 つのタブがあります。tab2 = 凡例; tab3 = 計算します。正しいタブは「データ」です。ユーザーがタブ「計算」をクリックして、タブ「データ」のすべてのフィールドをいつ完了したかを確認する必要があります。他のアクティビティ(クラス)でTabDadosのonclickListenerイベントを作成することはわかりません。タブホストと TabWidget の ID がわかりません。このイベントを作成するには?ありがとうございました!**

タブホストの ID が標準の Android で、ID も TabWidget の場合。私はこのイベントを行うことができません。助けて。

4

1 に答える 1

0

質問は不明です

「人々がタブをクリックしたときに機能を作成する必要があります」。mTabWidgetがTabWidgetコントロールであり、nTabOffset = 0、つまりdadosタブのオフセットであると想定します。

mTabWidget.getChildAt(nTabOffset).setOnClickListener(new OnClickListener() 
{
 @Override
 public void onClick(View v)
 {
   // TODO:
 }
});

TabHostはアクティビティをインスタンス化し、onCreate()を呼び出します。そこでアクティビティビューを初期化しますが、タブクリックイベントでデータの更新を再開する場合は、上記のonClick()メソッドを使用してこれを行うことができます。おそらく、アクティビティに登録されているブロードキャストインテントを送信します。

于 2012-04-16T20:09:49.303 に答える