在Android 4.3以下的版本中,View的getHitRect()方法有bug,在某些情况下获取的Rect并不准确,可以用以下方法代替:

public Rect getHitRect(View child){
   Rect frame = new Rect();
   frame.left = child.getLeft();
   frame.right = child.getRight();
   frame.top = child.getTop();
   frame.bottom = child.getBottom();
   return frame;
}

Strange View.getHitRect() behaviour

评论