LinearLayout layout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
layout = (LinearLayout) this.findViewById(R.id.layout);
layout.setBackgroundColor(Color.BLACK);
layout.setOnTouchListener(new View.OnTouchListener() {
private Rect rect;
@Override
public boolean onTouch(View v, MotionEvent event) {
//Log.d("onTouch","Touched: "+event.getAction());
if (event.getAction() == MotionEvent.ACTION_DOWN) {
Log.d("onTouch","ACTION_DOWN");
rect = new Rect(v.getLeft(), v.getTop(), v.getRight(), v.getBottom());
}
if (event.getAction() == MotionEvent.ACTION_UP) {
Log.d("onTouch","ACTION_UP");
if (!rect.contains(v.getLeft() + (int) event.getX(), v.getTop() + (int) event.getY())) {
Log.d("onTouch","ACTION_UP - outside");
} else {
Log.d("onTouch","ACTION_UP - inside");
// do your stuff here
}
}
if(event.getAction() == MotionEvent.ACTION_MOVE){
//Log.d("onTouch","ACTION_MOVE");
if(!rect.contains(v.getLeft() + (int) event.getX(), v.getTop() + (int) event.getY())){
Log.d("onTouch","ACTION_MOVE OUT");
}
}
if (event.getAction() == MotionEvent.ACTION_CANCEL){
Log.d("onTouch","ACTION_CANCEL");
return true;
}
return true;
}
});
}
留言列表