Я хочу иметь возможность наследовать, скажем, от базового IconButton, который имеет несколько свойств. Кнопки, которые наследуются от этого класса, должны иметь доступ к свойствам базового класса, не переопределяя их.
class BaseButton extends StatelessWidget {
final IconData icon;
final double size;
final Color color;
final Function onPressed;
const BaseButton({
Key key,
this.icon,
this.size = 30,
this.color = Colors.white,
this.onPressed,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return IconButton(
onPressed: onPressed,
icon: Icon(icon),
iconSize: size,
color: color,
);
}
}
Я хотел бы использовать этот базовый класс для генерации виджетов без особых хлопот:
class AddButton extends BaseButton {
@override
Widget build(BuildContext context) {
return BaseButton(icon: Icons.add);
}
}
class CancelButton extends BaseButton {
@override
Widget build(BuildContext context) {
return BaseButton(icon: Icons.close);
}
}
И я хочу иметь возможность легко получить доступ к свойствам унаследованного базового класса.