0
我是Android Studio新手,我正在開發我的第一款真實遊戲。我在獲取和存儲鼠標座標時遇到了問題。基本上,無論何時觸摸屏幕,我都需要根據點擊的位置進行操作。以下是我的代碼。如何在android studio中訪問鼠標座標
公共類NonmultiplierSixGame延伸AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MyView(this));
}
public class MyView extends View implements View.OnTouchListener{
public MyView(Context context){
super(context);
}
@Override
public boolean onTouch(View MyView, MotionEvent event) {
Globals.SetSelect(-2);
float mx = event.getX();
float my = event.getY();
if (mx > 10 && my > 10) {
Globals.SetSelect(1);
}
else {
Globals.SetSelect(0);
}
return true;
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//I have a bunch of shapes and text here
}
}
選擇是一個公共靜態INT被存儲在一個文件Globals.java
和最初被設置爲-1。當我運行代碼時,當我點擊任何地方時,select的值不會改變。 我試圖尋找一個答案,但我無法找到任何東西,所以我決定讓一個堆棧溢出帳戶,並問一個問題:)
我更換使用以下代碼的OnClick函數:public boolean onTouchEvent(View v,MotionEvent event){ float mx = event.getX(); float my = event.getY(); if(mx> 10 && my> 10)Globals.SetSelect(1); } else { Globals.SetSelect(0); } return true; }但它仍然不起作用。我是否需要根據上述使用哪個事件將它分成幾個案例? – mathexplorer
他們兩人都會爲你工作。 :) –
非常感謝您的幫助。當我運行上面的代碼時,它仍然不起作用。在編輯器中,當我將光標移到onTouchEvent上時,它說:「方法'onTouchEvent(android.view.View,android.view.MotionEvent)'從不使用」。這是問題的一部分嗎?再次感謝,我非常感謝幫助:) – mathexplorer