gpt4 book ai didi

flutter - 如何在Flutter中对齐多行?

转载 作者:行者123 更新时间:2023-12-03 04:39:29 24 4
gpt4 key购买 nike

情境
有一个专栏。
这个柱子有4个 child
前2个是行(R1和R2)
第三是分频器
最后一个是行(R3)
每行包含一个文本,该文本应扩展左侧的所有可用空间;一个子行,其中包含3个动态宽度的子级。这3个子项应与R1,R2和R3中的其他子项对齐(在垂直轴上)。
问题
子行的子项未对齐,如下面的屏幕截图所示
enter image description here
enter image description here

如何使R1,R2,R3中的子行的子代对齐?
最长的动态子项应指定宽度
可复制的代码:(提示只是在dartpad.dev上复制粘贴并点击运行)

import 'package:flutter/material.dart';

final Color darkBlue = Color.fromARGB(255, 18, 32, 47);

void main() {
runApp(MyApp());
}

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData.dark().copyWith(scaffoldBackgroundColor: darkBlue),
debugShowCheckedModeBanner: false,
home: Scaffold(
body: Center(
child: MyWidget(),
),
),
);
}
}

class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Column(
children:[
Row(
children: [
Expanded(child: Text('Main Balance')),
Row(
children: [
Text('350 Rs'),
Padding(
child: Text('->'),
padding: EdgeInsets.symmetric(horizontal: 20),
),
Text('35000 USD'),
],
),
],
),

Row(
children: [
Expanded(child: Text('Credit Balance')),
Row(
children: [
Text('350 Rs'),
Padding(
child: Text('->'),
padding: EdgeInsets.symmetric(horizontal: 20),
),
Text('35 USD'),
],
),
],
),
Divider(),
Row(
children: [
Expanded(child: Text('Total')),
Row(
children: [
Text('350 Rs'),
Padding(
child: Text('->'),
padding: EdgeInsets.symmetric(horizontal: 20),
),
Text('35000000 USD'),
],
),
],
),
]
);
}
}
尝试
我尝试使用3列而不是一行,但是随后又遇到了另一个问题,我应该在哪里放置分频器?

最佳答案

试试这个:
使用Table小部件,您可以根据需要进行自定义

Table(
columnWidths: {2: FlexColumnWidth(0.2)},
children: [
TableRow(children: [
Text('Main Balance'),
Text('350 Rs'),
Text('->'),
Text('35000 USD'),
]),
TableRow(children: [
Text('Credit Balance'),
Text('350 Rs'),
Text('->'),
Text('35 USD'),
]),
TableRow(children: [
Divider(),
Divider(),
Divider(),
Divider(),
]),
TableRow(children: [
Text('Total'),
Text('350 Rs'),
Text('->'),
Text('35000000 USD'),
]),
],
),
结果代码为:
enter image description here

关于flutter - 如何在Flutter中对齐多行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63493605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com