2012-04-16 77 views
0

我Tools.java:标签OnClickListener另一活动

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”中创建一个事件? 我需要创建一个函数,当人们点击标签“calcular”做一些测试数据时,它应该填写“dados”标签。

我有3个选项卡:tab1 = data; tab2 = legend; tab3 =计算。 corrent选项卡是“数据”。我需要检查用户何时单击“计算”选项卡上的所有字段“数据”选项卡已完成。我不知道在其他活动(类)中为TabDados创建onclickListener事件。我不知道tabhost和TabWidget的ID。 如何创建此事件?谢谢!**

如果我的tabhost的id是标准的android,我的id也是TabWidget。我无法做这个事件。帮我。

+0

您是否尝试过使用'onTabChanged(String tabId)'? – amp 2012-04-16 20:06:19

回答

0

问题不清楚

“我需要创建一个函数,当人们点击标签”。假设mTabWidget是你TabWidget控制和nTabOffset = 0,即你dados选项卡的偏移量:

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

TabHost将实例中的活动并调用的onCreate()。你可以初始化你在那里的活动视图,但是如果你想要一个标签点击事件来重新启动一些数据更新,你可以通过上面的onClick()方法来做到这一点,也许发送一个注册在你的活动中的广播意图。

+0

我有3个选项卡: tab1 = data; tab2 = legend; tab3 =计算。 corrent选项卡是“数据”。 我需要检查用户何时单击“计算”选项卡上的所有字段“数据”选项卡已完成。 我不知道在其他活动(类)中为TabDados创建onclickListener事件。 我不知道tabhost和TabWidget的ID。 如何创建此事件? – GDawson 2012-04-16 20:36:59