bounty将在2小时后到期。此问题的答案有资格获得+50声望奖励。Test正在寻找一个答案从一个有信誉的来源。
我有个问题我想在图标下面添加文本,并添加一个带背景的边框。我该怎么做?
我不知道如何在边框内添加带有背景的文本。最好的选择是什么?
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import '../utils/definitions.dart';
import 'icons.dart';
import '../model/label.dart';
class LabelButton extends IconButton {
final Label? label;
//counter feedback!
LabelButton(
{required this.label, required VoidStringCallback? process, Key? key})
: super(
key: key,
icon: Icon(iconList
.firstWhere((element) => element.name == label!.uiIcon)
.icon),
iconSize: 80,
onPressed: () {
process!(label!.name);
HapticFeedback.lightImpact();
});
const LabelButton._(this.label, {Key? key})
: super(key: key, icon: const Icon(null), onPressed: null);
static LabelButton createBlank() {
return const LabelButton._(null);
}
}
我尝试的是:
我试图改变这一点与ElevatedButton,我可以使用一个背景和标签。
class LabelButton extends ElevatedButton {
final Label? label;
//counter feedback!
LabelButton(
{required this.label, required VoidStringCallback? process, Key? key})
: super(
key: key,
icon: Icon(iconList
.firstWhere((element) => element.name == label!.uiIcon)
.icon),
iconSize: 80,
label: Text('Test'),
child: ,
onPressed: () {
process!(label!.name);
HapticFeedback.lightImpact();
});
const LabelButton._(this.label, {Key? key})
: super(key: key, icon: const Icon(null), onPressed: null);
static LabelButton createBlank() {
return const LabelButton._(null);
}
}
3条答案
按热度按时间ecbunoof1#
试试下面的代码
fjnneemd2#
您可以创建自己的自定义按钮并对其进行自定义。
如果您想要一个带有文本的图标,请将Text替换为Row或Column,并添加一个Icon小部件。
下面是一个例子:
你需要的时候就这样用。
不要忘记像这样导入类。
2ic8powd3#
你可以试试这个代码块,输出如下