嗨,Flutter 社区:)
开发 flutter 应用程序并寻求 UI 小部件的帮助。
我不知道如何根据父母的身高设置孩子的身高。
需要创建一个垂直分隔线(或具有自定义高度的容器)并将其高度设置为其父级的最大值,因为父级高度(在我的例子中是一列)将根据内部小部件而变化。
我找到了创建垂直分隔线但高度固定的方法。尝试使用 BoxFit、BoxConstraints、FittedBox 和其他几种方法,但未能设置父级的高度。
分隔线放置在容器>行>列->容器内,分隔线的高度应该是列的高度。
如下图所示:
https://i.stack.imgur.com/uUWjF.png
ps 所有小部件都放置在 ListView 内
Column(
children: <Widget>[
Container(
color: Colors.blue,
width: 5.0,
//height: -> setting to maximum of its parent
),
],
),
Run Code Online (Sandbox Code Playgroud) 在使用ListView.Builder创建列表时,如何在最后一项中隐藏分隔符?
为每个项添加分隔符相当容易,但是在列表中的最后一项上解除分隔符的逻辑是什么?
没有具体的stackoverflow问题以及实现此任务的具体示例.
Widget build(BuildContext context) {
return
ListView.builder(
shrinkWrap: true,
physics: ScrollPhysics(),
itemCount: OffersList.length,
itemBuilder: (context, index) {
Offer item = OffersList[index];
return ListItem(context, item);
},
);
}
Widget ListItem(BuildContext context, Offer item) {
if ( index == OffersList.length - 1) {
dividerChecker = EmptyContainer();
} else {
dividerChecker = Divider();
}
return Column(
children: <Widget>[
OfferListItem(
offerData: item,
status: status,
userType: userType,
),
dividerChecker,
],
);
Run Code Online (Sandbox Code Playgroud)
}
解决方案如建议:
使用ListView.separator而不是ListView.Builder:
ListView.separated(
separatorBuilder: (BuildContext context, int index) => new Divider(), …
Run Code Online (Sandbox Code Playgroud) 我一直在研究最新的 js 框架(一如既往,它们太多了..),并遇到了 gatsby 和 next 声称可以减轻使用 React 开发的一些痛苦。
我专门研究使用 js 构建静态网站,例如 next.js 或 gatsby.js
有人可以解释一下我是否需要掌握 React.js 才能开始在 next.js 或 gatsby.js 中进行开发?