flutter - 如何向页面视图 Flutter 添加不同的项目
问题描述
我有这段代码,它允许我在包含文本的卡片之间滚动。但是,它所做的只是在每张卡片上添加相同的文字。我想显示两个单独的文本,它们保存在里面
HomeInfo()
Achieve()
这是我目前拥有的代码:
SizedBox(
height: 300,
child: PageView.builder(
itemCount: 2,
controller: PageController(viewportFraction: 0.7),
onPageChanged: (int index) =>
setState(() => _index = index),
itemBuilder: (_, i) {
return Transform.scale(
scale: i == _index ? 1 : 0.9,
child: Card(
elevation: 6,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(20)),
child: Center(
child: HomeInfo(),
),
),
);
},
),
),
我真的很困惑如何做到这一点。(我刚开始接触编码)谢谢
解决方案
您需要检查索引并返回适当的小部件。
您可以通过以下方式实现:
SizedBox(
height: 300,
child: PageView.builder(
itemCount: 2,
controller: PageController(viewportFraction: 0.7),
onPageChanged: (int index) =>
setState(() => _index = index),
itemBuilder: (_, i) {
return Transform.scale(
scale: i == _index ? 1 : 0.9,
child: Card(
elevation: 6,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(20)),
child: Center(
child: i == 0 ? HomeInfo() : Achieve(), // this line
),
),
);
},
),
),
推荐阅读
- python - 绘制分类数据的直方图
- mysql - 如何从同一列中检索多个信息?
- bash - Dockerfile 的 COPY 命令不能正常工作
- strapi - Strapi 在 auth/local/register 上没有 JWT 令牌返回
- reactjs - 为什么 ReactJS 导航返回错误?
- c++11 - 何时应将 shared_ptr 作为原始指针传递?
- html - 分页不起作用 - 点击事件页面返回第一页
- python - 具有多个可见行选项的 Python Dash 下拉列表
- r - 在R中生成奇数反转
- c# - 从套接字读取时第 512 个字符后缺少数据(C# 服务器,C++ 客户端)