Tab*_*aba 3 flutter flutter-layout
在2.0.1flutter版本之前,我使用的是RaisedButton并且有一个属性被调用focusElevation来改变按钮被按下时的高度。因此,在 Flutter 弃用它之后,根据文档,我们应该改用它ElevatedButton。但是现在我找不到用style:属性来改变它的方法。
我知道如何更改高度,但我想更改用户按下时的onPressed 高度。从它的文档来看,它有一些默认值:
按钮的高程是相对于高程参数定义的。禁用的仰角与参数值相同,当按钮悬停或聚焦时使用仰角+2,按下按钮时使用仰角+6。
因此,任何想法如何定制onPressed抬高的ElevatedButton?
您可以使用该style属性来完成。
ElevatedButton(
style: ButtonStyle(
elevation: MaterialStateProperty.resolveWith<double>(
(Set<MaterialState> states) {
// if the button is pressed the elevation is 10.0, if not
// it is 5.0
if (states.contains(MaterialState.pressed))
return 10.0;
return 5.0;
},
),
),
)
Run Code Online (Sandbox Code Playgroud)
或者您可以ElevatedButton.styleFrom()通过使用merge方法将其与新属性结合使用。像这样:
ElevatedButton.styleFrom(primary: Colors.red).merge(
ButtonStyle(
elevation: MaterialStateProperty.resolveWith<double>(
(Set<MaterialState> states) {
if (states.contains(MaterialState.pressed))
return 10.0;
return 5.0;
},
),
),
),
),
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
523 次 |
| 最近记录: |