美文网首页
自定义组件

自定义组件

作者: 价值投机168 | 来源:发表于2022-03-24 17:47 被阅读0次

import 'package:flutter/material.dart';

void main() {
runApp(const MyApp());
}

//1
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blueGrey,
),
home: const CustomWidget() //const MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}

//5自定义widget
class CustomWidget extends LeafRenderObjectWidget {
const CustomWidget({Key? key}) : super(key: key);

@override
RenderObject createRenderObject(BuildContext context) {
// 创建 RenderObject
return RenderCustomObject();
}

@override
void updateRenderObject(
BuildContext context, RenderCustomObject renderObject) {
// 更新 RenderObject
super.updateRenderObject(context, renderObject);
}
}

class RenderCustomObject extends RenderBox {
@override
void performLayout() {
// 实现布局逻辑
}

@override
void paint(PaintingContext context, Offset offset) {
var paint = Paint()
..isAntiAlias = true
..style = PaintingStyle.stroke //填充
..color = Colors.blue; //背景为纸黄色
context.canvas.drawLine(Offset.zero, const Offset(30, 60), paint);
}
}

相关文章

网友评论

      本文标题:自定义组件

      本文链接:https://www.haomeiwen.com/subject/lykljrtx.html