Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法恢复x和y位置_Java_Android_Eclipse - Fatal编程技术网

Java 无法恢复x和y位置

Java 无法恢复x和y位置,java,android,eclipse,Java,Android,Eclipse,我刚刚开始学习如何为android编程,似乎无法获得当有人点击屏幕显示在log cat中时的x位置。当我点击屏幕时,如果这与任何事情有关,我会使用模拟器,但不会发生任何事情。这是我启动时的程序,没有错误。也使用相对布局 package com.practice; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.MotionEvent; impo

我刚刚开始学习如何为android编程,似乎无法获得当有人点击屏幕显示在log cat中时的x位置。当我点击屏幕时,如果这与任何事情有关,我会使用模拟器,但不会发生任何事情。这是我启动时的程序,没有错误。也使用相对布局

package com.practice;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;


public class PracticeActivity extends Activity implements OnTouchListener{


    int touchX;
    int touchY;


    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

    }

    @Override
    public boolean onTouch(View v, MotionEvent event) {

        onTouchEvent(event);
        touchX = (int) event.getX();
        touchY = (int) event.getY(); 

        Log.d( "MOUSE", String.valueOf(touchX) );


        return true;
    }



}

尝试使用Integer.toStringtouchX并返回false而不是true,除非您的代码看起来很好。 Emulator不注册触摸事件。
还有一个名为DDMS的实用程序,位于SDK的tools文件夹中。当模拟器运行时,使用此实用程序获取图形日志。您还可以过滤消息。

您的OnTouchListener在您向视图注册之前不会被调用。例如:

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Find a view in the layout
    View view = findViewById(android.id.content);

    // register the listener
    view.setOnTouchListener(this);
}

logcat提供了什么吗?谢谢你刚刚尝试添加视图,现在它工作得很好,顺便问一下,返回的值是否与普通像素一样?或在dpiInteger中,API中的像素值通常以实际像素为单位。