flutter - 在颤振堆栈中右对齐图像
问题描述
child: Stack(
//alignment: Alignment.center,
children: <Widget>[
Container(
alignment: Alignment.center,
width: MediaQuery.of(mContext).size.width / 1.7,
decoration: ShapeDecoration(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(30.0)),
gradient: LinearGradient(
colors: gradient,
begin: Alignment.topLeft,
end: Alignment.bottomRight),
),
child: Text(title,
style: TextStyle(
color: Colors.white,
fontSize: 18,
fontWeight: FontWeight.w500)),
padding: EdgeInsets.only(top: 16, bottom: 16),
),
Visibility(
visible: isEndIconVisible,
child: Padding(
padding: EdgeInsets.only(right: 10),
child: ImageIcon(
AssetImage("assets/ic_forward.png"),
size: 30,
color: Colors.white,
)),
),
],
),
我有一个按钮,它应该位于屏幕的中心。位于按钮中心的文本和右箭头。因为我想把按钮放在中心,所以我把对齐中心放在中间,所以右箭头作为中心。谁能帮我解决这个问题?我也想知道我们在哪里点击了这个按钮。
解决方案
您可以使用简单的行小部件来实现您预期的用户界面。看看下面的代码可能对你有帮助。
Stack(
alignment: Alignment.center,
children: <Widget>[
Container(
alignment: Alignment.center,
width: MediaQuery.of(context).size.width / 1.7,
decoration: ShapeDecoration(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(30.0)),
color: Colors.red
,
),
child: Row(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
Text("vdsv",
style: TextStyle(
color: Colors.white,
fontSize: 18,
fontWeight: FontWeight.w500)),
Visibility(
visible: true,
child: Padding(
padding: EdgeInsets.only(right: 10),
child: ImageIcon(
AssetImage("assets/images/logo.png"),
size: 30,
color: Colors.white,
)),
),
],
),
padding: EdgeInsets.only(top: 16, bottom: 16),
),
],
)
推荐阅读
- laravel - 使用 SMTP Gmail 发送的电子邮件未送达
- cmake - 使用 OpenSSL 作为依赖项构建 CMake 项目
- c# - 无法从“字符串”转换为“Microsoft.EntityFrameworkCore.ServerVersion”
- javascript - 从 React Select 中的选择对象中获取值
- python - Python:Pandas df 的线性回归 - 序数日期转换
- mongodb - 用于计算百分比的 MongoDB 查询
- python - 如何修复 Django 测试中的内存泄漏?
- python - 它的数据集“忠实”默认预加载在任何库中?
- python - 预期 min_ndim=4,在 tensorflow 中发现 ndim=2
- asp.net-core - ASP.NET Core 路由无法匹配路由参数,API 资源管理器中的路由参数重复