2012-12-24 2 views
0

Je suis conscient de la méthode onTabChanged pour obtenir l'ID de l'onglet en cours. Pourriez-vous s'il vous plaît me guider pour obtenir l'index de l'onglet.Pour obtenir l'index des onglets dans Android

public void onTabChanged(String tabId) { 
    // TODO Auto-generated method stub 
    currentTab = tabId; 
    updatetab(); 
} 

Répondre

1

utilisent ce

mytabs.getCurrentTab(); 
+1

me devança c'est (mais seulement juste). :) – Squonk

+1

Quand les gens décident de répondre, nous le faisons tous en même temps ne pas XD –

+0

Il ne fonctionne pas \t @Override \t public void onTabChanged (String Tabid) {// \t \t TODO Auto- stub de méthode généré \t currentTab = tabId; \t Log.i ("NewTicket", "Im actuellement dans l'onglet avec index ::" + th.getCurrentTab()); \t \t updatetab(); \t} 12-24 23: 37: 23,949: E/AndroidRuntime (2511): Exception irrécupérable: principale 12-24 23: 37: 23,949: E/AndroidRuntime (2511): 12-24 java.lang.NullPointerException 23: 37: 23.949: E/AndroidRuntime (2511): \t à com.example.restaurent.NewTicket.onItemClick (NewTicket.java:175) 12-24 23: 37: 23.949: E/AndroidRuntime (2511): au – user1822729

1

Essayez d'appeler getCurrentTab() sur votre TabHost - Je pense qu'il faut le faire.

0

Si vous utilisez Tab au lieu de TabHost utiliser cette construction pour retourner l'onglet sélectionné:

Tab currentTab = actionBar.getSelectedTab(); 

De là, vous pouvez le lire ou le modifier. Par exemple si vous voulez changer la couleur du texte de l'onglet actif, vous pouvez le faire:

currentTab.setCustomView(R.layout.actionbar_active_tab_layout); 
TextView currentTabView = (TextView) currentTab.getCustomView().findViewById(R.id.ActiveTab); 
currentTabView.setTextColor(getResources().getColor(R.color.purple)); 

De toute évidence, vous aurez également besoin d'un simple fichier de configuration ainsi par exemple:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_gravity="center" 
    android:orientation="vertical" > 

<TextView 
    android:id="@+id/ActiveTab" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_gravity="center" 
    android:gravity="center" 
    android:text="tab name" 
    android:textColor="@color/Gray" 
    android:textSize="20sp" 
    android:textScaleX="1.3" 
    android:textStyle="bold" /> 
</LinearLayout>