2012-04-16 3 views
0

내 tabhost의 tools.java을 TabWidget. 그리고 각 "file. java"명령 내에서 계산을 수행해야합니다.듣기 클릭

"dados.java"내에는 사용자 정보가 있습니다. "calcular"탭을 클릭하면 모든 데이터가 완료되었는지 확인해야합니다.

버튼과 같이 각 탭마다 "onclicklistener"가 필요하다고 생각하십니까 ??

어떻게? "Dados"탭 "Legenda"탭 "calcular"탭을 클릭하면 코드를 실행하는 이벤트를 만드는 방법은 무엇입니까?

주의 : "ToolDadosCircular.java"파일에서 어떤 탭을 클릭했는지 확인해야합니다.

편집 : 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> 
</TabHost> 

답변

0

tabHost.getChildAt(yourtab).setOnClickListener(new View.onClickListener() 
{ 
    @Override public void onClick(View view){ 
     //your code 
    } 
} 

편집을 시도 : 나는 문제가 될 때까지 수업이

public class ToolDadosTubuCirc extends Activity{ 
    @Override public void onCreate(Bundle bundle){ 
      //code... 
      TabHost tabHost = (TabHost) getParent().findViewById(yourTabHostId); 
      //do what you want with tabHost 
      //code... 
    } 
} 
+0

일처럼 같은데요 다음 : 이 이벤트를 클릭하십시오. ToolDadosTubuCirc.java에있는 다른 클래스. 즉, getTabHost를 사용할 수 없으며 tabHost Tools.java 파일의 값을 다른 클래스로 전달해야합니다. 그렇다면 어떻게? – GDawson

+0

다른 클래스에서는'getParent(). getTabHost(); '를 사용합니다. 이것은 부모 컨텍스트 (TabActivity)를 가지며 메서드 및 필드와 같은 TabActivity 정보에 액세스 할 수 있습니다. –

+0

죄송하지만, 이해가 안됩니다. 다른 클래스에서 호출 할 때 위의 코드를 수정할 수 있습니까? 도움 – GDawson