getPositionBottomLeft static method
Offset
getPositionBottomLeft(
- GlobalKey<
State< parentKey,StatefulWidget> > - GlobalKey<
State< childKeyStatefulWidget> >
Implementation
static Offset getPositionBottomLeft(GlobalKey parentKey, GlobalKey childKey) {
final parentBox = parentKey.currentContext!.findRenderObject() as RenderBox?;
if (parentBox == null) {
throw Exception();
}
final childBox = childKey.currentContext!.findRenderObject() as RenderBox?;
if (childBox == null) {
throw Exception();
}
final parentPosition = parentBox.localToGlobal(Offset.zero);
final parentHeight = parentBox.size.height;
final childPosition = childBox.localToGlobal(Offset.zero);
final childHeight = childBox.size.height;
final x = childPosition.dx - parentPosition.dx;
final y = (childPosition.dy + childHeight - parentPosition.dy - parentHeight).abs();
return Offset(x, y);
}