IconBtn
- это StatelessWidget
, который не имеет отношения к классу IconButton
, за исключением того, что он использует его в своей функции сборки. Каждое свойство, которое вы видите для IconBtn
, является его параметром конструктора, то есть, если вы не определите все свойства IconButton
как свойство класса IconBtn
, вы не сможете получить доступ ко всем свойствам IconButton.
Примечание: Даже если вы определите все свойства IconButton
в IconBtn
, это свойства класса IconBtn
, а не IconButton
, но вы можете передать эти значения в IconButton
класс, как вы показали в своем собственном примере.
Еще одна вещь, Flutter больше похож на композицию, а не на наследование, поэтому ваш подход правильный. Не стесняйтесь добавлять дополнительные свойства в класс IconBtn, если хотите.
Как предложил @huextrat, вы можете передать сам виджет IconButton в качестве одного из параметров, чтобы решить вашу проблему, если вы действительно хотите, чтобы все свойства IconButton, но обычно нам нужны только некоторые свойства.