Salut à tous!
Je suis actuellement entrain de m'amuser a crée un petit jeu.
Et la je bloque sur le fait que quand je fait pause je voudrais faire apparaitre des bouton ou autre tout en gardant en arrière la l'état du jeux.
Pour le moment en fait quand je fait pause je dit a l'activité de faire un autre setContentView mais le problème c'est que du coup la vue n'est plus la surfaceView est donc je ne vois pas l'état du jeux.
Je voudrais donc savoir si c'était possible de rajouter des boutons et tous sur la surfaceView?
L'activité:
La surface View:
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
45
46
47
48 public class GameActivity extends Activity implements OnLooseListener,OnPauseListener { ViewGame view ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); view = new ViewGame(this); setContentView(view); view.setLooseListener(this); view.setOnPauseListener(this); } @Override protected void onPause() { super.onPause(); this.view.getThread().pause(); } /** * Call when game loosed */ public void onLoosed(int point) { Intent intent = new Intent(this,LooseActivity.class); intent.putExtra("point", point+""); startActivity(intent); } public void onPauseClicked() { setContentView(R.layout.pause); } }
Merci d'avance
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 public class ViewGame extends SurfaceView implements SurfaceHolder.Callback , Constantes { private GameThread thread;//game thread //listener private OnLooseListener listener; private OnPauseListener pauseListener; public ViewGame(Context context) { super(context); SurfaceHolder holder = getHolder(); this.thread = new GameThread(holder, context); holder.addCallback(this); setFocusable(true); } /** * * @param listener */ public void setLooseListener(OnLooseListener listener) { this.listener = listener; } /** * * @param listener */ public void setOnPauseListener(OnPauseListener listener) { this.pauseListener = listener; } @Override public boolean onTouchEvent(MotionEvent event) { float y = event.getY(); float x = event.getX(); if(isPause(x,y)) { if(this.thread.getStateGame() == STATE_RUNNING) //Si on est a jouer on met pause { Log.d("WORKFEL", "pause"); this.thread.pause(); this.pauseListener.onPauseClicked(); //onPause(); } return true; //this.thread.unpause(); } //...............![]()
Partager