flutter创建自定义组件

83 阅读1分钟

class Custombutton extends StatelessWidget {

//  组件的属性
  final String text;
  final VoidCallback onPressed;
  final Color color;


  // 构建函数
  const Custombutton({super.key, required this.text, required this.onPressed, required this.color});

  @override
  Widget build(BuildContext context) {
    return ElevatedButton(onPressed: onPressed,
        style: ElevatedButton.styleFrom(
          backgroundColor: color,
        ),
        child: Text(text));
  }
}

在main.dart调用

import 'package:flutter/material.dart';
import 'package:widget_demo/page/CustomButton.dart';

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

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Custombutton(text: "Click Me", onPressed: (){
          print("click me ... ");
        }, color: Colors.pink),
      ),
    );
  }
}