我遇到了这个问题:当我在iPhone 11上使用安全区域时,我发现唯一的办法是按钮的背景是全高的,但现在按钮被按下了一部分。请告诉我如何使整个蓝色区域按下按钮。感谢你们所有人的回答。我添加了一个屏幕截图和一段代码,因为它现在实现了。

Container(
color: Colors.blue,
child: SafeArea(
left: false,
right: false,
child: Expanded(
flex: 1,
child: SizedBox(
width: double.infinity,
child: RaisedButton(
elevation: 0,
onPressed: () {},
child: Text("Add", style: TextStyle(color: Colors.white)),
color: Colors.blue,
),
),
),
),
),发布于 2020-10-22 01:27:27
您可以通过更改此Container的颜色进行检查。
Container(
color: Colors.red,或者,您可以通过inspector使用Debug Paint。然后你就会意识到有些区域不在按钮中。这就是onTap不工作的原因。
在此之后,您可以轻松地使用InkWell包装您的所有容器。
InkWell(
onTap: () {
// Here is your onTap function
},
Container(
color: Colors.red,
child: SafeArea(
left: false,
right: false,
child: Expanded(
flex: 1,
child: SizedBox(
width: double.infinity,
// In fact, you don't need a button anymore.
child: RaisedButton(
elevation: 0,
onPressed: () {},
child: Text("Add", style: TextStyle(color: Colors.white)),
color: Colors.blue,
),
),
),
),
),
), https://stackoverflow.com/questions/64468450
复制相似问题