dengyin2000 / dynamic_widget

A Backend-Driven UI toolkit, build your dynamic UI with json, and the json format is very similar with flutter widget code.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

I want to use draggableScrollableSheet. but error builder.

Lonratana opened this issue · comments

class DraggableWidgetParser extends WidgetParser {
@OverRide
Map<String, dynamic>? export(Widget? widget, BuildContext? buildContext) {
var realWidget = widget as DraggableScrollableSheet;
return <String, dynamic>{
"type": "DraggableScrollableSheet",
"initialChildSize": realWidget.initialChildSize ?? 0.5,
"minChildSize": realWidget.minChildSize ?? 0.25,
"maxChildSize": realWidget.maxChildSize ?? 1.0,
"expand": realWidget.expand ?? true,
"snap": realWidget.snap ?? false,
"builder": ....................................,
};
}

@OverRide
Widget parse(Map<String, dynamic> map, BuildContext buildContext,
ClickListener? listener) {
var initialChildSize =
map.containsKey("initialChildSize") ? map["initialChildSize"] : 0.5;
var maxChildSize =
map.containsKey("maxChildSize") ? map["maxChildSize"] : 1.0;
var minChildSize =
map.containsKey("minChildSize") ? map["minChildSize"] : 0.25;
var expand = map.containsKey("expand") ? map["expand"] : true;
var snap = map.containsKey("snap") ? map["snap"] : false;
var snapSizes = map.containsKey("snapSizes") ? map["snapSizes"] : null;
var builder = ..............................;
var draggableScrollableSheet = new DraggableScrollableSheet(
initialChildSize: initialChildSize,
maxChildSize: maxChildSize,
minChildSize: minChildSize,
expand: expand,
snap: snap,
snapSizes: snapSizes,
builder:..........................,
);
return draggableScrollableSheet
}