flutter自定义勾选按钮
时间: 2023-07-30 17:04:11 浏览: 166
自定义按钮
5星 · 资源好评率100%
在Flutter中,你可以使用自定义图标或图片来创建自定义的勾选按钮。下面是一个简单的示例:
```dart
import 'package:flutter/material.dart';
class CustomCheckbox extends StatefulWidget {
@override
_CustomCheckboxState createState() => _CustomCheckboxState();
}
class _CustomCheckboxState extends State<CustomCheckbox> {
bool _isChecked = false;
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () {
setState(() {
_isChecked = !_isChecked;
});
},
child: Container(
decoration: BoxDecoration(
shape: BoxShape.circle,
color: _isChecked ? Colors.green : Colors.transparent,
border: Border.all(
color: Colors.green,
width: 2.0,
),
),
child: _isChecked
? Icon(
Icons.check,
color: Colors.white,
)
: null,
),
);
}
}
// 使用自定义勾选按钮
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Custom Checkbox'),
),
body: Center(
child: CustomCheckbox(),
),
),
);
}
}
void main() {
runApp(MyApp());
}
```
在上面的示例中,我们创建了一个名为CustomCheckbox的自定义勾选按钮。它使用GestureDetector来监听点击事件,并在每次点击时切换勾选状态。根据勾选状态,我们使用Container来显示不同的样式:勾选时显示绿色圆形背景和白色勾选图标,未勾选时不显示任何内容。你可以根据自己的需求自定义样式和图标。
阅读全文