- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
GestureDetector未在ListWheelScrollView内部检测到onTap。
如果包裹整个ListWheel,效果很好,但是在屏幕上的任意位置轻按都会导致导航。我希望小部件检测仅由ListWheelScrollView.useDelegate()返回的触摸
我在GIthub和StackOverFlow上发现了类似的问题,但是当时的解决方案没有解决我的问题。
注意:将行为赋予HitTestBehavior.translucent无效。
class ListCard extends StatefulWidget {
@override
_ListCardState createState() => _ListCardState();
}
class _ListCardState extends State<ListCard> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.white,
body: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Padding(
padding: const EdgeInsets.only(left: 10.0, right: 10, top: 15),
child: SearchBar(),
),
Expanded(child: RecipeListWheel()),
],
),
);
}
}
class RecipeListWheel extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ListWheelScrollView.useDelegate(
diameterRatio: 1.2,
perspective: 0.0001,
itemExtent: 150,
childDelegate: ListWheelChildBuilderDelegate(
builder: (BuildContext context, int index) {
if (index < 0 || index > 10 || index > recipeList.length - 1) {
return null;
}
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 15.0),
child: Container(
height: 240,
color: Colors.transparent,
child: Row(
children: <Widget>[
Expanded(
child: GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: () {
print('user tapped first Inkwell');
},
child: Container(
decoration: BoxDecoration(
color: Colors.blueGrey,
image: DecorationImage(
image: CachedNetworkImageProvider(
'${recipeList[index].image}'),
fit: BoxFit.cover),
borderRadius: BorderRadius.circular(20),
boxShadow: [
BoxShadow(
color: recipeList[index].type == 'nveg'
? Colors.red.withOpacity(0.9)
: Colors.green.withOpacity(0.9),
spreadRadius: 3,
blurRadius: 10,
)
]),
child: Text('hello how are you'),
),
),
),
Expanded(
child: Container(
decoration: BoxDecoration(
color: Colors.white,
boxShadow: kboxShadow,
borderRadius: BorderRadius.only(
topRight: Radius.circular(20),
bottomRight: Radius.circular(20))),
height: 120,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
recipeList[index].name,
textAlign: TextAlign.center,
style: kNepaliTextStyle.copyWith(
fontWeight: FontWeight.bold),
),
Text('Veg'),
],
),
))
],
),
),
);
}),
);
}
}
最佳答案
尝试添加gestureRecognizers: <Factory<OneSequenceGestureRecognizer>>[
new Factory<OneSequenceGestureRecognizer>(() => new EagerGestureRecognizer(),),
].toSet(),
您想要将onTap分配到的小部件。
关于android - GestureDetector在ListWheelScrollView中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61839565/
我的 ListWheelScrollView 随机滚动并落在值之间,我搜索了很长时间但没有找到处理它的方法。有人知道解决这个问题吗? new ListWheelScrollView(itemExten
这是 flutter_datetime_picker 的 UI。如何像这样添加水平线: 这是我的代码和 UI。 ListWheelScrollView( itemExtent: 20, dia
代码是一个按钮,按下该按钮会显示一个模态底页(使用 showModalBottomSheet()),其中包含用户可以选择的可滚动月份列表,使用 ListWheelScrollView 小部件(使用方法
ListWheelScrollView 的子级无法识别点击。如何让 ListWheelScrollView 的 child 识别水龙头?我认为在 children 面前有某种可滚动的小部件阻止 chi
我正在尝试使用水平 ListView 小部件来放大中心项目。我尝试使用普通的 ListView 但无法放大中心项目。然后在搜索 flutter 文档时我遇到了 ListWheelScrollView
我看到了this article我想为我在 Univ 的最终项目实现 ListWheelScrollView。但是,作者的代码无法正常工作,我找不到确切的问题所在。我怎样才能像下面这样制作动画? 我的
在 iOS 上使用 ListWheelScrollView 显示图像小部件时,我遇到了一个特殊错误。它包含在 PageView 的一页中,并且在我最小化该应用程序之前它工作正常。如果应用程序在进入后台
我正在尝试使用 ListWheelScrollView 制作一个项目列表,我希望能够在项目上点击,但似乎是 onTap 不起作用。 这是一个简单的代码 List numbers = [
当我使用 ListView 时,ListTile OnTap 正在工作。但是当我使用 ListWheelScrollView 时它不起作用。我的意思是它不会被窃听。 View 发生变化。但我似乎无法点
我是一名优秀的程序员,十分优秀!