bonjour

je suis bloqué sur un probleme depuis pas mal de temps

voila:je cherche a faire un petite application qui fait des annonces audio quand je clic sur un "button"

quand je fait mon code dans la classe MainActivity,pas de probleme

mais pour des raisons d aspect pratique,je voudrais appeler une classe java qui fasse la partie audio

en fait ,c est pour permettre de faire une classe a chaque cas de figure ,mais aussi pour pouvoir reprendre des parties de mon code plus facilement d apres moi,et les reutiliser suivant mes idées

donc quand je cree ma classe java que j appelle audio, j envoi a une methode appele vocale un tableua ou, suivant le int envoyé je lis telle ou telle piste mp3;j ai fait un dossier raw ou j ai mis les sons voulus et je l ai mis dans res de mon projet

j ai constaté que ,dans ma classe java vocale ,il fallait que je donne le chemin d acces complet de ces pistes audio

par contre ,eclipse (oui je me sert d eclipse pour programmer sous android et en plus j ai un vieux pc 32 bits) me met une erreur sur le ".create":

The method create(Context, int) in the type MediaPlayer is not applicable for the arguments (vocale, int)

a force de chercher,j ai cru comprendre que cela venait du fait que je n avais aucun context dans ma classe,le this ne renvoyant a rien

du coup ,je pensais importer le context de MainActivity,mais je ne comprend pas du tout comment il faut faire

je suis amateur et debutant et autodidactesur la programmation,seul devant mon clavier,ce qui explique mes nombreuses lacunes et imperfections

voici mon code
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
33
34
35
36
37
38
39
40
41
42
43
44
package com.example.scorepetforum;
 
import android.support.v7.app.ActionBarActivity;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.provider.MediaStore.Audio;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
 
 
public  class MainActivity extends Activity  {
 
    int compteur=0;
    int compteur2=0;
    static int[]memaff=new int[2];
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
 
        super.onCreate(savedInstanceState);
 
        setContentView(R.layout.activity_main);
 
 
 
    }
 
    public void audio(View view) {
        ;
memaff[0]=compteur;
memaff[1]=compteur2;
        vocale a=new vocale();
        a.causer(memaff);
 
        };
}
le xml
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
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#2085e1"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.petanque.MainActivity" >
 
    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:onClick="audio"
        android:text="audio" />
 
</RelativeLayout>
et ma fameuse classe java vocale
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
33
34
35
36
37
38
39
package com.example.scorepetforum;
 
 
import android.R;
import android.media.MediaPlayer;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import java.io.IOException;
import android.app.Activity;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
 
public class vocale {
 
    private MediaPlayer eux;
    private MediaPlayer p12;
    ;
 
        public void causer(int[] memaff) {
            p12 = MediaPlayer.create(this, com.example.scorepetforum.R.raw.p12);
            eux=(MediaPlayer.create(this,com.example.scorepetforum.R.raw.eux));
             switch(memaff[0]){
 
               case 1:
                   eux.start();
                   break;
 
               case 2:
                   p12.start();
                   break;
 
 
           }
 
        }
si vous pouvez me dire comment il faut faire,merci