Android erhält das Begrenzungsrechteck einer Ansicht
Ich bin die Implementierung einer drag-and-drop für Android-Anwendung. Um zu wissen, ob die drop passiert, innerhalb der drop-Ziel, muss ich wissen, das umschließende Rechteck des drop-Ziel anzeigen. Ich würde dann sehen, wenn der getRawX/Y()
im MotionEvent fallen in diesem rect wenn ich das ACTION_UP
Aktion.
Ich weiß, ich kann anrufen getLeft/Right/Top/Bottom()
auf das drop-Ziel anzeigen, aber diese sind relativ zum übergeordneten container. Es scheint, ich muss wissen, die "real" - oder raw-Werte, so kann ich Sie vergleichen, um die raw x, y in der MotionEvent.
InformationsquelleAutor der Frage Jeffrey Blattman | 2011-04-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beantwortung meiner eigenen Frage ... ja,
View.getLocationOnScreen()
hat den trick. Zum Beispiel,InformationsquelleAutor der Antwort Jeffrey Blattman
Können Sie auch eine Rect-hier:
Weniger wortreich, und möglicherweise schneller, aber sicherlich (IMO) besser lesbar.
InformationsquelleAutor der Antwort tbm
Dieser code berücksichtigt, der Umfang der
Views
beteiligt und gibt nurtrue
ist, wenn das gezogeneView
ist vollständig in die drop-zone.InformationsquelleAutor der Antwort kc ochibili