Flutter-如何创建基本材料小部件的修改版本?

时间:2018-06-30 12:41:07

标签: dart flutter

我正在尝试从flutter的材料小部件中修改Stepper小部件。
特别是,我希望有一个不包含ContinueCancel按钮,而仅使用onStepTapped回调进行导航的版本。

我最初的想法只是extend Stepper类,但是由于它是有状态的小部件,因此构建在_StepperState类中。我想我也必须扩展它,并创建一个扩展Stepper的新的有状态小部件,并扩展StepperState的状态。后者并未通过flutter/material.dart公开,而且我似乎无法轻松地扩展它以覆盖_buildVerticalControls方法。

对扑扑和飞镖游戏不熟悉,我现在想知道什么是正确的方式来扩展/修改现有的(有状态的)小部件,而无需c&p-整个类?

2 个答案:

答案 0 :(得分:0)

是的,我想我可能会知道该怎么做,只要转到flutter sdk(无论安装位置如何),然后在packages // src / material /之类的文件中找到finid stepper.dart文件,然后在该文件中找到名为

的函数
Widget _buildVerticalBody(int index)

,然后从该函数的主体中找到语句

_buildVerticalControls()

并像这样注释掉该函数的调用

//_buildVerticalControls()

瞧,按钮不见了;)

答案 1 :(得分:0)

我不知道它是否已经回答,但是我认为您可以使用controlsBuilder属性,然后您可以添加一个空容器以避免显示按钮(没有测试自己,但我认为这可以就可以了。