我有一个非常简单的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<ImageView
android:id="@+id/board"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/boardmask" />
</LinearLayout>
和一个非常简单的活动:
public class BoardActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.board_activity);
ImageView board = (ImageView) findViewById(R.id.board);
board.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
Log.i("OnTouch", event.getX() + " " + event.getY());
}
return true;
}
});
}
}
ImageView 大约是屏幕垂直的一半,并且居中。有人可以解释为什么单击屏幕顶部或底部会生成 OnTouch 事件,它应该不在 ImageView 之外,不是吗?
最好的问候,非常感谢你。