Bonjour à tous,

Je souhaite faire une application avec des onglets (pour ceux qui sont intéressés : un exemple sur google, il existe une multitude d'exemples même en français).

En reprenant le code ça donne çà (il suffit de suivre les tuto de base) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import android.app.TabActivity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.widget.TabHost;
 
public class Principale extends TabActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Resources res = getResources(); // Resource object to get Drawables
        TabHost tabHost = getTabHost();  // The activity TabHost
        TabHost.TabSpec spec;  // Resusable TabSpec for each tab
        Intent intent;  // Reusable Intent for each tab
        // Create an Intent to launch an Activity for the tab (to be reused)
        intent = new Intent().setClass(this, onglet1.class);
        // Initialize a TabSpec for each tab and add it to the TabHost
        spec = tabHost.newTabSpec("Aujourd'hui").setIndicator("Aujourd'hui")
                      .setContent(intent);
        tabHost.addTab(spec);
        // Do the same for the other tabs
        intent = new Intent().setClass(this, onglet2.class);
        spec = tabHost.newTabSpec("Historique").setIndicator("Historique")
                      .setContent(intent);
        tabHost.addTab(spec);
        tabHost.setCurrentTab(0);
    }
}
et chaque onglet est composé d'une activité :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
public class onglet1 extends Activity {
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.tab1);
    }
}
setContentView(R.layout.tab1); fait donc appel au fichier tab1.xml que j'ai défini.

Maintenant si dans mon programme j'envisage de rajouter un bouton et un listener qui qaund je clique dessus me charge non pas pas mon fichier tab1.xml mais un autre fichier tab1bis.xml. Sachant que j'ai déjà essayer de rajouter un setContentView(R.layout.tab1bis); dans un listener et que je plante mon programme quand j'appuie sur ce bouton censé changer l'apparence de mon onglet.

Comment faire ? Si je n'ai pas été clair n'hésitez pas à me demander de reformuler.