Comment appeler onglet Onclick et OnTabChange pour le même onglet

Dans mon projet, j'ai deux onglets et un bouton. Pour les deux onglets,j'ai deux activités et bouton d'appel d'activités différents. le truc c'est que je suis en train de montrer le résultat de bouton sur le premier onglet. j'.e tab0 est active sur tab0Event et sur l'événement clic du bouton trop. Et je suis capable de changer l'onglet événements à l'aide de tabHost.setOnTabChangedListener, mais maintenant ce que je veux dire, c'est dire supposons que je clique sur le bouton maintenant le bouton de la vue est l'affichage(tab0 est active) mais encore une fois si je clique sur tab0, tab0 activité doit être affiché.

J'ai essayé de nombreuses solutions pour les en cliquant sur l'onglet, on est

getTabWidget().getChildAt(getTabHost().getCurrentTab()).setOnClickListener
      (new View.OnClickListener() {

      @Override public void onClick(View v) {
      System.out.println(getTabHost().getCurrentTab());

      } });

Mais quand j'ai utilisé ce code avec tabChnageListner, onglet ne fonctionne pas et j'ai obtenu des résultats inattendus.
Voulez-vous s'il vous plaît suggérer une solution pour mon problème.

Grâce.

code de travail pour l'onglet changé, c'est que: (fonctionne très bien pour de l'onglet modifier, besoin d'ajouter un Onglet Onclick) de

public class TabLayoutUsingTabChangeEventActivity extends TabActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);                
final TabHost tabHost = (TabHost)findViewById(android.R.id.tabhost);
final TabHost.TabSpec sp1 = tabHost.newTabSpec("TAB1");
TabHost.TabSpec sp2 = tabHost.newTabSpec("TAB2");
//Creating First Tab
Intent intent1 = new Intent(this, Tab1Activity.class);
sp1.setIndicator("TAB1").setContent(intent1);
tabHost.addTab(sp1);
//Creating Second Tab 
Intent intent2 = new Intent(this, Tab2Activity.class);
sp2.setIndicator("TAB2").setContent(intent2);
tabHost.addTab(sp2);               
//Tab Changed Event
tabHost.setOnTabChangedListener(new OnTabChangeListener(){
@Override
public void onTabChanged(String tabId) {
Log.i("TabId :", tabId);
if(tabId.equals("TAB2")){
Log.i("TAB1", "TAB1 Changed");
Intent intent1 = new Intent().setClass(getApplicationContext(), Tab1Activity.class);
sp1.setIndicator("TAB1").setContent(intent1);
tabHost.setCurrentTab(0);
}
}
});
Button addNewButton = (Button)findViewById(R.id.add_new_ticket_btn);
addNewButton.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
Intent in = new Intent().setClass(getApplicationContext(), AddNewTicketActivity.class);
sp1.setContent(in);
tabHost.setCurrentTab(0);
//startActivity(in);
}
});               
}
}
  • veuillez mettre à jour votre exigence clairement. il n'est pas clair.
InformationsquelleAutor Romi | 2011-11-29