首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Flutter中,参数类型为“List<InkWell>?”不能分配给参数类型“”List<Widget>“”

在Flutter中,参数类型为List<InkWell>不能分配给参数类型List<Widget>。这是因为在Dart语言中,泛型是具有不同类型参数的类型的通用表示。虽然List<InkWell>List<Widget>的子类,但在Dart中,泛型类型的类型参数是具有不同类型参数的不同类型。因此,无法将具有不同类型参数的泛型类型直接赋值给另一个泛型类型。

要解决这个问题,可以使用List<Widget>.from构造函数将List<InkWell>转换为List<Widget>,如下所示:

代码语言:txt
复制
List<InkWell> inkwells = [...]; // 假设这是一个InkWell的列表
List<Widget> widgets = List<Widget>.from(inkwells);

上述代码将inkwells列表中的每个InkWell元素转换为相应的Widget类型,并将结果存储在widgets列表中。现在,widgets列表可以作为参数传递给类型为List<Widget>的方法或构造函数。

注意:在使用List<Widget>.from转换时,需要确保每个InkWell元素都是有效的Widget类型,否则将会出现运行时错误。

相关搜索:参数类型'List<Null>?‘不能分配给参数类型“”List<Widget>“”不能将参数类型“List<Set<Card>>”分配给参数类型“List<Widget>”Flutter错误:参数类型为'List<dynamic>?‘不能分配给参数类型“”List<dynamic>“”flutter list错误参数类型'List‘不能分配给参数类型'String’不能将参数类型'List<Widget>‘分配给参数类型’({List<Card>:bool})→growable‘参数类型'List<dynamic>?‘不能分配给参数类型'List<dynamic>‘。在使用list时不能将参数类型“List<String>”分配给参数类型“List<String>Function()”参数类型“Future”不能分配给参数类型“List<LatLng>”Flutter -参数类型'Iterable>‘不能赋值给类型'List’不能将参数类型“List<ChatModel>”分配给参数类型“ChatModel”不能将参数类型“BoxShadow”分配给参数类型“List<BoxShadow>”不能将参数类型List<LatLng>分配给参数类型“LatLng”迁移到空安全性:参数类型'Object?‘不能分配给参数类型“”List<Widget>“”错误:不能将参数类型“List<int>”分配给参数类型“Uint8List”参数类型“List<Series<dynamic,dynamic>>”不能分配给参数类型“List<Series<dynamic,String*>*>*”参数类型“Widget”不能分配给参数类型“PreferredSizeWidget?”参数类型“String”不能分配给参数类型“Uint8List”不能将参数类型“List<dynamic>”分配给参数类型“Iterable<Object>”不能将参数类型“List<dynamic>”分配给参数类型“Iterable<Video>”不能将参数类型“DropdownMenuItem<dynamic>”分配给参数类型“List<DropdownMenuItem<String>>?”
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

FastAPI(11)- 函数参数类型是列表,但不使用 typing List,而使用 list,会怎么样?

使用 typing List、Set、Tuple 的栗子 from typing import Optional import uvicorn from fastapi import FastAPI...update_item( list_: List[int] = Body(...), tuple_: Tuple[int] = Body(...), set...、Set、Tuple 都会指定里面参数的数据类型 而 FastAPI 会对声明了数据类型的数据进行数据校验,所以会针对序列里面的参数进行数据校验 如果校验失败,会报一个友好的错误提示 使用 list、...set、tuple 的栗子 用 Python 自带的 list、set、tuple 类,是无法指定序列里面参数的数据类型,所以 FastAPI 并不会针对里面的参数进行数据校验 @app.put("/items...return results 变成传啥类型的值都可以 总结 要充分利用 FastAPI 的优势,强烈建议用 typing 的 List、Set、Tuple 来表示列表、集合、元组类型

3.7K30

带你深入 Dart 解析一个有趣的引用和编译实验

首先我们看一段代码,如下代码所示,可以看到: 首先我们定义了一个叫 idx 的 int 型参数; 然后 for 循环里添加了三个 InkWell 可点击控件; 最后 onTap 里面将 idx 打印出来...如下代码所示,我们 for 循环里增加了一个 index 参数,把每次 idx 都赋值给 index ,这样点击打印出来的结果,就会是点击对应的 index 。...如下代码所示,把 InkWell 放到一个 getItem 函数里返回,然后 index 通过函数参数传递进来,可以看到运行后的结果,也是点击对应 InkWell 打印对应的 index 。...: #C66613), $creationLocationd_0dea112b090073317d4: #C66617)); } 因为 onTap 是点击后才输出参数的,而对于 for (...至于为什么会有这样的逻辑,深入的运行时逻辑就没有去探索了(懒),推测应该是编译后的二进制文件在运行时,针对循环外的参数和循环内的参数优化有关系。

1.3K20
  • Flutter的日期、格式化日期、日期选择器组件

    Flutter的第三方库 date_format 的使用 实际上,我之前介绍Flutter如何导入第三方库的文章依赖管理(二):第三方组件库Flutter要如何管理,就是以date_format...依赖管理(二):第三方组件库Flutter要如何管理,我详细介绍了如何去查找第三方库、如何将pub.dev的第三方库安装到Flutter项目中、date_format库的基本使用,这里我就不赘述了...//调起日期选择器 _showDatePicker() { //获取异步方法里面的值的第一种方式:then showDatePicker( //如下四个参数必填参数...//调起日期选择器 _showDatePicker() async { //第一种方式:then showDatePicker( //如下四个参数必填参数...iOS和Android,都有国际化配置的概念,Flutter也不例外。Flutter如何配置国际化呢?

    25.8K52

    flutter系列之:移动端手势的具体使用

    赋予widget可以点击的功能 一般情况下,我们的普通widget,比如文本是不能进行交互的,但是如果将其用GestureDetector进行包装之后,就可以将其伪装成为一个button。...答案是肯定的,flutter我们提供了一个InkWell组件,这样手指按压下组件会产生波纹的效果。 那么InkWell和GestureDetector有什么联系呢?...InkWell和GestureDetector很类似,都提供了对手势的支持。 InkWell中提供了多种GestureTapCallback接口,用接收手势的回调,非常的方便。...使用上,InkWell和GestureDetector也很类似,我们可以完全照搬GestureDetector的用法。...可删除的组件 app的手势应用上,有一个比较常见的用法就是list列表,向左滑动一个item,会出现删除的按钮,这种滑动删除的效果,如何在flutter实现呢?

    1.1K40

    flutter系列之:移动端手势的具体使用

    赋予widget可以点击的功能一般情况下,我们的普通widget,比如文本是不能进行交互的,但是如果将其用GestureDetector进行包装之后,就可以将其伪装成为一个button。...答案是肯定的,flutter我们提供了一个InkWell组件,这样手指按压下组件会产生波纹的效果。那么InkWell和GestureDetector有什么联系呢?...InkWell和GestureDetector很类似,都提供了对手势的支持。InkWell中提供了多种GestureTapCallback接口,用接收手势的回调,非常的方便。...使用上,InkWell和GestureDetector也很类似,我们可以完全照搬GestureDetector的用法。...可删除的组件app的手势应用上,有一个比较常见的用法就是list列表,向左滑动一个item,会出现删除的按钮,这种滑动删除的效果,如何在flutter实现呢?

    97610

    Flutter 入门指北之手势处理和动画

    Flutter ,自带手势监听的目前为止好像只有按钮部件和一些 chip 部件,例如 Text 等部件需要实现手势监听,就需要借助带有监听事件的部件来实现了,这节我们会讲下 InkWell 和 GestureDetector...InkWell MaterialDesign 风格下的一个用来响应触摸的矩形区域(注意加粗的文字,1.如果不是 MD 风格的部件下,你是不能用这个来做点击响应的;2.InkWell 是一块矩形区域...// 监听手指点击事件 this.onTap, // 一个 `GestureTapDownCallback` 类型参数,需要 `TapDownDetails` 类型参数, //...Interval 用来延迟动画,例如一个时长 6s 的动画,通过 Interval 设置其 begin 参数 0.5,end 参数设置 1.0,那么这个动画就会变成 3s 的动画,并且开始的时间延迟了...Hero 通过指定 Hero 的 tag,切换的时候 Hero 会寻找相同的 tag,并实现动画,具体的实现逻辑,这里可以推荐一篇文章 谈一谈Flutter的共享元素动画Hero,里面写的很详细,

    1.8K30

    Flutter 构建完整应用手册-处理手势

    添加材质涟漪效果 设计应遵循材质设计指南的应用程序时,我们希望点击时将涟漪动画添加到部件。 Flutter提供InkWell部件来达到这个效果。...路线 创建一个我们想要点击的部件 将其包装在InkWell部件以管理点击回调和涟漪动画 // The InkWell Wraps our custom flat button Widget new InkWell...实现划动消除 “划动消除”模式很多移动应用很常见。 例如,如果我们正在编写一个电子邮件应用程序,我们可能希望允许我们的用户列表划离邮件消息。...final items = new List.generate(20, (i) => "Item ${i + 1}"); 将数据源转换为List 首先,我们将简单地屏幕上的列表显示每个条目...为此,我们将为Dismissible提供background参数

    1.8K20

    Flutter 入门指北之弹窗和提示(干货)

    前面的小节把常用的一些部件都介绍了,这节介绍下 Flutter 的一些操作提示。...Flutter 的操作提示主要有这么几种 SnackBar、BottomSheet、Dialog,因为 Dialog 样式比较多,放最后讲好了 SnackBar SnackBar 的源码相对简单 const...BottomSheet BottomSheet 看命名就知道是从底部弹出的菜单,展示 BottomSheet 有两种方式,分别是 showBottomSheet 和 showModalBottomSheet,两种方式只有展示类型上的差别... ListView 增加一个 BottomSheet 的按钮,因为 BottomSheet 需要的 context 也不能是 Scaffold 下的 context,所以需要通过 Builder 进行包裹一层...false, // 通过 StatefulBuilder 来保存 dialog 状态 // builder 需要传入一个 BuildContext 和 StateSetter 类型参数

    2.2K20

    Flutter 专题】124 日常问题小结 (三) 自定义 Dialog 二三事

    resizeToAvoidBottomPadding / resizeToAvoidBottomInset true,当设置 false 时,文本框获取焦点时,依旧会被软键盘遮挡;因为固定情景可以配合...resizeToAvoidBottomPadding 实现是否被软键盘遮挡效果; resizeToAvoidBottomPadding 主要用于自身 Widget 是否避免被其他窗口遮挡;其中和尚查资料介绍...Dialog 回调传参 和尚在自定义 Dialog 时如何在一个回调方法传递多个参数? A3....接收方法与 Function 传递参数匹配 和尚在 Dialog 的回调方法传递两个 List,而在接收回调方法匹配两个参数即可;和尚简单看作是一个函数方法; // 传参方法 onSelectEvent...automaticallyImplyLeading 属性设置 false; @override Widget build(BuildContext context) { return Scaffold

    1.2K70

    构建实用的Flutter文件列表:从简到繁的完美演进

    我们的示例,我们将在AppBar添加一个按钮来切换布局方式。...每个文件的Card,我们放置了一个文件图标和文件名,并通过InkWell来处理文件的点击事件。 通过以上步骤,我们已经成功实现了网格布局的文件列表。...通过设置overflowTextOverflow.ellipsis,可以让文本超出一定长度后自动截断,并显示省略号。...pubspec.yaml文件添加http库的依赖: dependencies: flutter: sdk: flutter http: ^1.2.0 然后运行flutter pub...(GIF动不了啊)(又可以动了) 总结 本文中,我们详细探讨了如何在Flutter应用构建文件列表,并逐步改进和优化这个文件列表,以提升用户体验和功能性。

    23812

    利用flutter实现炫酷的list

    前言 使用了flutter一段时间,越来越喜欢flutter了,flutter比我们想象的强大。这篇文章介绍了怎么使用flutter来展示一个很漂亮的list,先看下效果图。 ?...开发前准备 我们会用到加载网络图片FadeInImage这么个widget,需要一个loading的icon,所以需要在pubspec.yaml里配置下静态资源,只有配置过的静态资源才可以项目中使用..., elevation: 0, title: Text( 'flutter awesome list', style: TextStyle( color: Colors.white, ),...上面,这里给的offsetoffset: Offset(0, -56) ,56appBar的高度 下面的斜切造型需要使用ClipPath()来完成,用法有点像canvas,代码如下: class...组件将AwesomeListItem包裹,InkWellflutter自带的组件,这个组件的特点是点击的时候带有水墨绽开的效果。

    97410

    flutter给图片加个好看的遮罩层【flutter20个实例之六】

    一、老套路,先看样式 左起图一是我业务的样式,左起图二、三是下方源码展示样式(复制可直接运行,无额外组件引入) ? ? ?...:每个图标增加个点击事件 由于底部弹框也相当于一个页面,所以想要里面的select选择后内容跟着变动,就需要重定义setState() 4.核心内容列表就是一个GridView 一行显示4个 crossAxisCount...65%=59 70%=4c 75%=3F 80%=33 85%=21 90%=19 95%=0c 100%=00(全透明) 三、源码(可直接运行调试) import 'package:flutter.../cupertino.dart'; import 'package:flutter/material.dart'; class Mytest extends StatefulWidget { @override..., ), ), ); } Widget _itemGrid(index) { return InkWell( child: Container

    4.2K30

    Flutter开发的一些Tips

    ,高度36,但是FlatButton没有直接修改的属性,网上好多的方法都是通过包一层Container去修改,不仅增加的嵌套,有些需求还不能达到。...输入金额类型数据时,需要将keyboardType属性设置TextInputType.numberWithOptions(decimal: true)。...6.keyboardType ---- keyboardType属性主要含义弹起的键盘类型,并不代表输入数据的类型。...而在Android开发EditText设置android:inputType不仅可以指定弹起的键盘类型,同时也确定了输入数据的类型,也就是内置了数据的格式校验。...诸如此类的信息没有打包进去(但是引用xmlflutter_image_picker_file_paths文件却在),导致我实际使用这些功能时没有反应,但是平时的调试过程却是好的。

    2.1K30
    领券