Custom paint widget with RenderBox
qiuxiang opened this issue · comments
class CustomRenderWidget extends LeafRenderObjectWidget {
const CustomRenderWidget();
@override
RenderObject createRenderObject(BuildContext context) {
return CustomRenderBox();
}
}
class CustomRenderBox extends RenderBox {
@override
void paint(PaintingContext context, Offset offset) {
final paint = Paint()..color = Colors.orange;
context.canvas.drawRect(
Rect.fromLTWH(
offset.dx,
offset.dy,
size.width,
size.height,
),
paint,
);
}
@override
void performResize() {
size = constraints.biggest;
}
@override
bool get sizedByParent => true;
@override
bool get isRepaintBoundary => true;
}