Android On Touch -
i have been trying make program draw circles touch screen no luck, can please tell me how can this? or tutorial shows me how... keep getting errors in code
import android.content.context; import android.content.intent; import android.graphics.canvas; import android.graphics.color; import android.graphics.paint; import android.graphics.path; import android.text.format.time; import android.util.attributeset; import android.view.motionevent; import android.view.view; import java.lang.math; public class gameview extends view{ private final float x; private final float y; private final int r; private final paint mpaint = new paint(paint.anti_alias_flag); public gameview(context context, float x, float y, int r) { super(context); setfocusable(true); mpaint.setcolor(0xffff0000); this.x = x; this.y = y; this.r = r; } @override protected void ondraw(canvas canvas) { super.ondraw(canvas); canvas.drawcircle(x, y, r, mpaint); } } gameactivity.java
import android.app.activity; import android.content.context; import android.os.bundle; import android.os.handler; import android.os.message; import android.view.display; import android.view.motionevent; import android.view.view; import android.view.windowmanager; import android.widget.framelayout; public class gameactivity extends activity { /** called when activity first created. */ @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); framelayout main = (framelayout) findviewbyid(r.id.my_view); main.setontouchlistener(new view.ontouchlistener() { public boolean ontouch(final view v, motionevent e) { final float x = e.getx(); final float y = e.gety(); final handler handler = new handler() { public void handlemessage(message msg) { } }; thread graphicthread = new thread() { public void run() { try { //do drop framelayout flview = (framelayout) v; gameview gm = new gameview(getparent(), x,y,25); flview.addview(gm); thread.sleep(1000); handler.sendmessage(handler.obtainmessage()); } catch (interruptedexception e) { // todo auto-generated catch block e.printstacktrace(); } } }; boolean isrunning=true; graphicthread.start(); return true; } }); } }
you shouldn't using getparent() in activity if it's not child activity.
use instead:
gameview gm = new gameview(this, x, y, 25);
Comments
Post a Comment