Flutter自定义按钮插件dghub_button的使用
DGHub Studio

Buy Me a Coffee
什么是dghub_button?
这个包为Flutter项目提供了一个可定制的按钮。
安装
在你的pubspec.yaml
文件的dependencies:
部分添加以下行:
dependencies:
dghub_button: <latest_version>
导入包
import 'package:dghub_button/dghub_button.dart';
示例:主页按钮
以下是一个简单的示例,展示如何使用DGHubButton
。
DGHubButton(
config: ButtonConfig(
width: 100,
isError: isError,
isSuccess: isSuccess,
// isLoading: true,
onTap: () {
isSuccess = true;
setState(() {});
},
color: Colors.pink,
label: 'Click',
),
),
完整示例代码
以下是完整的示例代码,展示如何在Flutter应用中使用dghub_button
。
main.dart
import 'package:flutter/material.dart';
import 'package:dghub_button/dghub_button.dart'; // 导入dghub_button包
void main() {
runApp(const MyApp()); // 运行应用
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
// 应用的根小部件
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo', // 应用标题
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple), // 主题颜色
useMaterial3: true,
),
home: const MyHomePage(title: 'Flutter Demo Home Page'), // 主页
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key, required this.title});
final String title;
[@override](/user/override)
State<MyHomePage> createState() => _MyHomePageState(); // 创建状态
}
class _MyHomePageState extends State<MyHomePage> {
bool isSuccess = true; // 成功状态
bool isError = false; // 错误状态
[@override](/user/override)
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Theme.of(context).colorScheme.inversePrimary, // 设置AppBar背景颜色
title: Text(widget.title), // 设置AppBar标题
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center, // 垂直居中
children: [
DGHubButton(
type: DGHubButtonType.circle, // 按钮类型为圆形
config: ButtonConfig(
width: 100, // 按钮宽度
height: 100, // 按钮高度
isError: isError, // 是否显示错误状态
isSuccess: isSuccess, // 是否显示成功状态
// isLoading: true, // 是否显示加载状态
onTap: () {
isSuccess = true; // 设置成功状态为true
setState(() {}); // 更新UI
},
iconSize: 35, // 图标大小
color: Colors.pink, // 按钮颜色
label: 'Click', // 按钮文字
),
),
],
),
),
);
}
}
更多关于Flutter自定义按钮插件dghub_button的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复