gpt4 book ai didi

android - Flutter Swiper,从另一个屏幕弹出后在同一页面上

转载 作者:行者123 更新时间:2023-12-04 10:22:16 24 4
gpt4 key购买 nike

我正在使用 Flutter Swiper用于创建刷卡器的插件。在刷卡器的每一页上,我都有按钮,使用 Navigator.of(context).pushNamed('/routeToSecondPage') 将我带到另一个屏幕。

我面临的问题是,当我从该页面返回时,Swiper 会重新加载并返回到其初始页面(即 0)。我希望它与按下按钮的页面位于同一页面上。

我尝试使用 PageView,它在 keepPage = true 下按预期工作,但由于 DotIndicator、Infinite loop 等一些功能,我更倾向于使用 Flutter_swiper。

这是我的 Swiper 代码:

class SwiperHomePage extends StatefulWidget {


@override
_SwiperHomePageState createState() => _SwiperHomePageState();
}

class _SwiperHomePageState extends State<_SwiperHomePage> {
static int _swiperIndex = 0;
final SwiperController _controller = SwiperController();

@override
Widget build(BuildContext context) {
return Container(
color: Colors.white,
child:Swiper(
index: _swiperIndex,
loop: true,
scrollDirection: Axis.horizontal,
indicatorLayout: PageIndicatorLayout.SCALE,
itemBuilder: (ctx, i) {
return Container(
margin: EdgeInsets.only(top: 24),
child: Container(
margin: EdgeInsets.all(4),
child: EachPage(),
),
);
},
itemCount: length,
controller: _controller,
pagination: SwiperPagination(
alignment: Alignment.topCenter,
builder: DotSwiperPaginationBuilder(
color: Colors.lightBlueAccent, activeColor: Colors.blue),
),
duration: 1000,
plugins: [],
),
);
}

changeSwiperIndex(int index) {
_controller.move(index, animation: true);
}
}

最佳答案

弄清楚如何做到这一点:

我保留了 _swiperIndex,但在页面更改时没有更改它。在滑动器中添加以下内容就可以了。

          onIndexChanged: (index) {
_swiperIndex = index;
},

关于android - Flutter Swiper,从另一个屏幕弹出后在同一页面上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60805201/

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