mainWidget method
dynamic
mainWidget()
@description: 根据位置、距离信息布局 @param {} @return {}
Implementation
mainWidget() {
double itemSpace = this.space ?? 4.w;
ImagePosition imageWidgetPosition =
this.imagePosition ?? ImagePosition.Right;
late Widget contentWidget;
switch (imageWidgetPosition) {
case ImagePosition.Left:
{
contentWidget = Row(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: [
this.imageWidget,
Divider(indent: itemSpace, color: Colors.transparent),
this.textWidget
],
);
}
break;
case ImagePosition.Up:
{
contentWidget = Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.min,
children: [
this.imageWidget,
Divider(height: itemSpace, color: Colors.transparent),
this.textWidget,
],
);
}
break;
case ImagePosition.Right:
{
contentWidget = Row(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: [
this.textWidget,
Divider(indent: itemSpace, color: Colors.transparent),
this.imageWidget,
],
);
}
break;
case ImagePosition.Down:
{
contentWidget = Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisSize: MainAxisSize.min,
children: [
this.textWidget,
Divider(height: itemSpace, color: Colors.transparent),
this.imageWidget,
],
);
}
break;
}
return contentWidget;
}