Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.badlogic.androidgames;
- import android.app.Activity;
- import android.content.Context;
- import android.graphics.Canvas;
- import android.os.Bundle;
- import android.view.SurfaceHolder;
- import android.view.SurfaceView;
- import android.view.Window;
- import android.view.WindowManager;
- public class SurfaceViewTest extends Activity {
- FastRenderView renderView;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);
- renderView = new FastRenderView(this);
- setContentView(renderView);
- }
- protected void onResume() {
- super.onResume();
- renderView.resume();
- }
- protected void onPause() {
- super.onPause();
- renderView.pause();
- }
- class FastRenderView extends SurfaceView implements Runnable,OnTouchListener {
- Thread renderThread = null;
- SurfaceHolder holder;
- Paint paint;
- int x=0;
- int y=0;
- volatile boolean running = false;
- public FastRenderView(Context context) {
- super(context);
- holder = getHolder();
- this.setOnTouchListener(this);
- }
- public void resume() {
- running = true;
- renderThread = new Thread(this);
- renderThread.start();
- }
- public void run() {
- while(running) {
- if(!holder.getSurface().isValid())
- continue;
- Canvas canvas = holder.lockCanvas();
- paint= new Paint();
- paint.setStyle(Paint.Style.STROKE);
- paint.setStrokeWidth(1);
- paint.setColor(Color.MAGENTA);
- paint.setTextSize(30);
- canvas.drawText(""+x+","+y, 75, 75, paint);
- holder.unlockCanvasAndPost(canvas);
- }
- }
- onTouch(View v, MotionEvent event)
- {
- x=event.getX();
- y=event.getY();
- }
- public void pause() {
- running = false;
- while(true) {
- try {
- renderThread.join();
- } catch (InterruptedException e) {
- // retry
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement