首页 > 解决方案 > 在颤动的一个屏幕中同步选择多个 CupertinoPicker

问题描述

我有两个CupertinoPicker。这些将由标志显示。这是我的代码:

Widget picker1() {
 return CupertinoPicker(
   itemExtent: 32.0,
   onSelectedItemChanged: (int index) {
     print('picker1 changed: $index');
   },
   children: List.generate(1000, (index) {
     return Center(child: Text('$index', style: TextStyle(color: Colors.white)));
   }),
 );
}

Widget picker2() {
 return CupertinoPicker(
   itemExtent: 32.0,
   onSelectedItemChanged: (int index) {
     print('picker2 changed: $index');
   },
   children: List.generate(40, (index) {
     return Center(child: Text('$index', style: TextStyle(color: Colors.white)));
   }),
 );
}

这些显示在构建方法中,如下所示:

flag == 1 ? picker1() : picker2();

但是当更改picker1 的值并切换到picker2 时,picker2 的值也与picker1 的值相同,反之亦然。但是 onSelectedItemChanged 没有反映。

这发生在 iOS 和 Android 上。

有人可以帮我解决这个问题吗?

标签: flutterdartcupertinopicker

解决方案


推荐阅读