Commit 0f6ff7ba authored by kenan's avatar kenan

点击事件

parent 562c2d3d
...@@ -14,6 +14,7 @@ import android.content.res.Resources; ...@@ -14,6 +14,7 @@ import android.content.res.Resources;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.HandlerThread;
import android.os.PowerManager; import android.os.PowerManager;
import android.util.Log; import android.util.Log;
import android.view.Gravity; import android.view.Gravity;
...@@ -84,6 +85,8 @@ public class YGOMobileActivity extends NativeActivity implements ...@@ -84,6 +85,8 @@ public class YGOMobileActivity extends NativeActivity implements
private volatile int mPositionX, mPositionY; private volatile int mPositionX, mPositionY;
private boolean mPaused; private boolean mPaused;
private SurfaceView mSurfaceView; private SurfaceView mSurfaceView;
private HandlerThread mThread;
private Handler mWorker;
// public static int notchHeight; // public static int notchHeight;
...@@ -108,6 +111,9 @@ public class YGOMobileActivity extends NativeActivity implements ...@@ -108,6 +111,9 @@ public class YGOMobileActivity extends NativeActivity implements
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
mSurfaceView = new SurfaceView(this); mSurfaceView = new SurfaceView(this);
mSurfaceView.getHolder().addCallback(this); mSurfaceView.getHolder().addCallback(this);
mThread = new HandlerThread("ygo_work_"+hashCode());
mThread.start();
mWorker = new Handler(mThread.getLooper());
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
Log.e("YGOStarter","跳转完成"+System.currentTimeMillis()); Log.e("YGOStarter","跳转完成"+System.currentTimeMillis());
mFullScreenUtils = new FullScreenUtils(this, app().isImmerSiveMode()); mFullScreenUtils = new FullScreenUtils(this, app().isImmerSiveMode());
...@@ -281,7 +287,15 @@ public class YGOMobileActivity extends NativeActivity implements ...@@ -281,7 +287,15 @@ public class YGOMobileActivity extends NativeActivity implements
default: default:
return false; return false;
} }
IrrlichtBridge.sendTouch(event.getAction(), event.getX(), event.getY(), 0); final int action = event.getAction();
final float x = event.getX();
final float y = event.getY();
mWorker.post(new Runnable() {
@Override
public void run() {
IrrlichtBridge.sendTouch(action, x, y, 0);
}
});
return true; return true;
} }
}); });
...@@ -305,18 +319,28 @@ public class YGOMobileActivity extends NativeActivity implements ...@@ -305,18 +319,28 @@ public class YGOMobileActivity extends NativeActivity implements
} }
@Override @Override
public boolean onKeyDown(int keyCode, KeyEvent event) { public boolean onKeyDown(final int keyCode, KeyEvent event) {
if(keyCode != KeyEvent.KEYCODE_BACK){ if(keyCode != KeyEvent.KEYCODE_BACK){
IrrlichtBridge.sendKey(keyCode, true); mWorker.post(new Runnable() {
@Override
public void run() {
IrrlichtBridge.sendKey(keyCode, true);
}
});
return true; return true;
} }
return super.onKeyDown(keyCode, event); return super.onKeyDown(keyCode, event);
} }
@Override @Override
public boolean onKeyUp(int keyCode, KeyEvent event) { public boolean onKeyUp(final int keyCode, KeyEvent event) {
if(keyCode != KeyEvent.KEYCODE_BACK){ if(keyCode != KeyEvent.KEYCODE_BACK){
IrrlichtBridge.sendKey(keyCode, false); mWorker.post(new Runnable() {
@Override
public void run() {
IrrlichtBridge.sendKey(keyCode, false);
}
});
return true; return true;
} }
return super.onKeyUp(keyCode, event); return super.onKeyUp(keyCode, event);
...@@ -324,7 +348,7 @@ public class YGOMobileActivity extends NativeActivity implements ...@@ -324,7 +348,7 @@ public class YGOMobileActivity extends NativeActivity implements
@Override @Override
public void onBackPressed() { public void onBackPressed() {
// Toast.makeText(this, "请在游戏里面退出", Toast.LENGTH_SHORT).show(); Toast.makeText(this, "请在游戏里面退出", Toast.LENGTH_SHORT).show();
// super.onBackPressed(); // super.onBackPressed();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment