java - Finish game loop and go to another activity Android 2.1 -
please me answer challenge. have been looking on internet , board answer. cant referr has been posted before anywhere on internet. question might trivial knows whats he's doing in android.
basically im trying finish game loop , go results page. when game hits if() end game. animation stops intent still on top of screen.
how create intent:
package com.droidnova.android.tutorial2d; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.view.view.onclicklistener; import android.view.window; import android.widget.button; public class menu extends activity { /** called when activity first created. */ @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.menu); button btnstart = (button) findviewbyid(r.id.btnstart); btnstart.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { intent intent = new intent(getapplicationcontext(),tutorial2d.class); startactivity(intent); finish(); }}); } }
how create panel:
package com.droidnova.android.tutorial2d; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.view.view.onclicklistener; import android.view.window; import android.widget.button; import android.view.surfaceholder; public class tutorial2d extends activity { /** called when activity first created. */ @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); requestwindowfeature(window.feature_no_title); setcontentview(new panel(this)); } @override protected void onstop(){ //finish(); setcontentview(r.layout.wynik); intent intent = new intent(getapplicationcontext(),wynik.class); startactivity(intent); //getparent(); super.onstop(); } protected void onpause(){ finish(); getparent(); super.onpause(); }}
panel:
package com.droidnova.android.tutorial2d; import java.util.*; import android.content.context; import android.content.intent; import android.graphics.bitmap; import android.graphics.bitmapfactory; import android.graphics.canvas; import android.graphics.color; import android.graphics.paint; import android.view.motionevent; import android.view.surfaceholder; import android.view.surfaceview; public class panel extends surfaceview implements surfaceholder.callback { public static float mwidth; public static float mheight; boolean koniec=false; public float ostatnix; public float ostatniy; public int testx,testy; public static int c=1; public int punkty; public viewthread mthread; private arraylist<element> melements = new arraylist<element>(); private int melementnumber = 0; private bitmap tlo; private paint mpaint = new paint(); public panel(context context) { super(context); getholder().addcallback(this); mthread = new viewthread(this); mpaint.setcolor(color.white); tlo = bitmapfactory.decoderesource(getresources(), r.drawable.tlo); } public void dodraw(long elapsed, canvas canvas) {//rysujemy!! if(!koniec){ canvas.drawbitmap(tlo, 0, 0, null); synchronized (melements) { (element element : melements) { element.dodraw(canvas); } } } else{canvas.drawcolor(color.black); //canvas.draw }; } // element znajdz = melements.get(0); // canvas.drawtext("fps: " + math.round(1000f / elapsed) + " elements: " + melementnumber +"x: "+znajdz.x1+"y: "+znajdz.y1, 10, 10, mpaint); // canvas.drawtext("ostatni x: "+ostatnix+" y: "+ostatniy+" testx: "+testx+" testy: "+testy+" punkty: "+punkty, 20, 20, mpaint); // } @override public void surfacechanged(surfaceholder holder, int format, int width, int height) { mwidth = width; mheight = height; } @override public void surfacecreated(surfaceholder holder) { if (!mthread.isalive()) { //c=0; mthread = new viewthread(this); mthread.setrunning(true); mthread.start(); } } @override public void surfacedestroyed(surfaceholder holder) { if (mthread.isalive()) { mthread.setrunning(false); } } public void addelements(){ int i; for(i=0;i<1;i++){ melements.add(new element(getresources(), (int) 100, (int) 100)); melementnumber = melements.size(); } } public void koniec(){ int i; for(i=0;i<melements.size();i++){ element znajdz = melements.get(i); if(znajdz.y1>mheight*0.9){ koniec=true;
here need put code go results screen when if() true. }
} } @override public boolean ontouchevent(motionevent event) { synchronized (melements) { // melements.add(new element(getresources(), (int) event.getx(), (int) event.gety())); // melementnumber = melements.size(); ostatnix=(float) event.getx(); ostatniy=(float) event.gety(); int b; for(b=0;b<melements.size();b++){ element znajdz = melements.get(b); testx=(int) znajdz.x1;testy=(int) znajdz.y1; if(znajdz.x1+5<event.getx()&&event.getx()<znajdz.x1+64&& znajdz.y1+5<event.gety()&&event.gety()<znajdz.y1+66 ){ punkty++; melements.remove(znajdz); } }; (melements.to(array)); //array = list.toarray(empty_string_array); melements.trimtosize(); melementnumber = melements.size(); if(melements.size()==0){ int i; for(i=0;i<c;i++){ melements.add(new element(getresources(), (int) i, (int) i)); melementnumber = melements.size(); } c++; } }; } return super.ontouchevent(event); } public void animate(long elapsedtime) { synchronized (melements) { (element element : melements) { element.animate(elapsedtime); } } } }
i didn't want ask here im forced lack of knowledge on topic , unability find answer :( please help.
see startactivity
:
startactivity(new intent(context, resultsactivity.class));
make sure declare results activity androidmanifest.xml
file.
Comments
Post a Comment