设为首页 加入收藏

TOP

Android MotionEvent 坐标获取
2014-11-24 07:40:25 来源: 作者: 【 】 浏览:0
Tags:Android MotionEvent 坐标 获取

getX() : 是获取相对当前控件(View)的坐标


getRawX() : 是获取相对显示屏幕左上角的坐标


演示示例代码


Java代码:


public class MainActivity extends Activity implements OnTouchListener {
private Button btn;
private int x = 0, y = 0;
private int rawX = 0, rawY = 0;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);


btn = (Button) findViewById(R.id.btn);
btn.setOnTouchListener(this);
}


@Override
public boolean onTouch(View view, MotionEvent event) {
int eventaction = event.getAction();


switch (eventaction) {
case MotionEvent.ACTION_DOWN:
break;


case MotionEvent.ACTION_MOVE:
x = (int) event.getX();
y = (int) event.getY();
rawX = (int) event.getRawX();
rawY = (int) event.getRawY();

Log.e("homer", "x = " + x + "; y = " + y + "; rawX = " + rawX + "; rawY = " + rawY);
break;

case MotionEvent.ACTION_UP:
break;
}


return false;
}
}


xml 代码:


xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context=".MainActivity" >


android:id="@+id/txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/hello_world" />


android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/txt"
android:layout_centerInParent="true"
android:text="button me" />


运行结果:



结果说明:


x,y : 分别获取的相对Button控件的坐标 getX(), getY()


rawX,rawY : 分别获取的相对显示屏幕左上角的坐标 getRawX(), getRawY()


总结:


getX() 是表示Widget相对于自身左上角的x坐标,而getRawX()是表示相对于屏幕左上角的x坐标值(注意:这个屏幕左上角是手机屏幕左上角,不管activity是否有titleBar或是否全屏幕); getY(),getRawY()一样的道理。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Fedora 17-x86编译linux-4.5.4内.. 下一篇编译Hadoop-2.0.3的native

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 并发工具类:提 (2025-12-25 20:25:44)
·Java面试技巧:如何 (2025-12-25 20:25:41)
·Java并发编程中的线 (2025-12-25 20:25:38)
·C 语言 - cppreferen (2025-12-25 19:50:27)
·《C 语言入门教程》 (2025-12-25 19:50:23)