flutter 图标数字角标
时间: 2023-07-28 08:10:09 浏览: 108
水平滚动的数字选择标尺(Flutter)
Flutter提供了一个名为`Badge`的widget,可以用来实现图标数字角标的效果。以下是一个简单的例子:
```dart
import 'package:flutter/material.dart';
class BadgeIcon extends StatelessWidget {
final IconData icon;
final int badgeCount;
BadgeIcon({required this.icon, required this.badgeCount});
@override
Widget build(BuildContext context) {
return Stack(
children: <Widget>[
Icon(icon),
Positioned(
top: 0,
right: 0,
child: Container(
padding: EdgeInsets.all(2),
decoration: BoxDecoration(
color: Colors.red,
borderRadius: BorderRadius.circular(10),
),
constraints: BoxConstraints(
minWidth: 16,
minHeight: 16,
),
child: Text(
badgeCount.toString(),
style: TextStyle(
color: Colors.white,
fontSize: 10,
),
textAlign: TextAlign.center,
),
),
)
],
);
}
}
```
使用`BadgeIcon`widget来创建带数字角标的图标:
```dart
BadgeIcon(
icon: Icons.notifications,
badgeCount: 5,
)
```
这将创建一个带有红色背景的白色数字5的图标。您可以根据需要自定义`BadgeIcon`widget来适应您的应用程序的主题和样式。
阅读全文