大佬教程收集整理的这篇文章主要介绍了错误:flutter 中没有名为“IndexedWidgetBuilder”的命名参数,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在 Flutter web 中遇到此错误。在PageVIEw.builder和Flutter项目中不怎么使用IndexedWidgetBuilder。尝试使用 itembuilder(context,index) 但没有解决。不能在这些版本的 Flutter 中使用 itemcount、itembuilder。
颤动医生:
Doctor summary (to see all details,run Flutter doctor -v):
[√] Flutter (Channel stable,2.0.3,on Microsoft windows [Version 10.0.19042.746],locale en-IN)
[!] AndroID toolchain - develop for AndroID devices (AndroID SDK version 29.0.2)
! Some AndroID licenses not accepted. To resolve this,run: Flutter doctor --androID-licenses
[√] Chrome - develop for the web
[√] AndroID Studio (version 3.5)
[√] VS Code (version 1.52.1)
[√] Connected device (2 available)
代码:
import 'dart:async';
import 'package:Flutter/material.dart';
import 'package:website/references/ref.dart';
class Carousel extends StatefulWidget {
@overrIDe
_CarouselState createState() => _CarouselState();
}
class _CarouselState extends State<Carousel> {
var _tag = "carousel.dart";
/// [ref]
Ref _ref = Ref();
/// [slIDe images]
final List<String> imgList = [
"assets/slIDer/slIDe1.jpg","assets/slIDer/slIDe2.jpeg","assets/slIDer/slIDe3.jpeg","assets/slIDer/slIDe4.jpeg","assets/slIDer/slIDe5.jpg","assets/slIDer/slIDe6.jpeg"
];
/// [variable for carousel]
final PageController _pageController = PageController(
initialPage: 0,vIEwportFraction: 1,);
int _currentPage = 0;
@overrIDe
voID initState() {
super.initState();
try {
Timer.periodic(Duration(seconds: 8),(Timer timer) {
if (_currentPage < 5) {
_currentPage++;
} else {
_currentPage = 0;
}
});
} on Exception catch (e) {
print("$_tag initState e : $e");
}
}
@overrIDe
voID dispose() {
super.dispose();
_pageController.dispose();
}
@overrIDe
Widget build(BuildContext context) {
double h = Mediaquery.of(context).size.height;
double w = Mediaquery.of(context).size.wIDth;
print("$_tag h: $h");
print("$_tag w: $w");
return ListVIEw(
padding: _ref.paddnmargin.edgeInsets0,children: <Widget>[
_buildImageCarosel(),],);
}
// build image carosel
Widget _buildImageCarosel() {
Widget Widget;
try {
Widget = Container(
height: Mediaquery.of(context).size.height / 1.5,wIDth: Mediaquery.of(context).size.wIDth,child: PageVIEw.builder(
scrollDirection: Axis.horizontal,controller: _pageController,onPageChanged: _onPageChanged,IndexedWidgetBuilder: _buildDynamicList,),);
} on Exception catch (e) {
print("$_tag _buildImageCarosel e : $e");
}
return Widget;
}
Widget _buildDynamicList() {
return ListVIEw.builder(
scrollDirection: Axis.horizontal,padding: _ref.paddnmargin.edgeInsets0,IndexedWidgetBuilder: (context,index) {
return Container(
margin: _ref.paddnmargin.edgeInsets10A,child: Center(
child: Image.asset(
imgList[index],height: Mediaquery.of(context).size.height / 1.5,);
},);
}
_onPageChanged(int index) {
setState(() {
_currentPage = index;
});
}
}
错误信息:
lib/Widgets/carousel.dart:122:11: Error: No @R_502_6889@d parameter with the @R_502_6889@ 'IndexedWidgetBuilder'.
IndexedWidgetBuilder: _buildDynamicList,^^^^^^^^^^^^^^^^^^^^
/C:/sdk/Flutter/packages/Flutter/lib/src/Widgets/page_vIEw.dart:661:3: Context: Found this candIDate,but the arguments don't match.
PageVIEw.builder({
^^^^^^^^^^^^^^^^
lib/Widgets/carousel.dart:140:7: Error: No @R_502_6889@d parameter with the @R_502_6889@ 'IndexedWidgetBuilder'.
IndexedWidgetBuilder: (context,index) {
^^^^^^^^^^^^^^^^^^^^
/C:/sdk/Flutter/packages/Flutter/lib/src/Widgets/scroll_vIEw.dart:1154:3: Context: Found this candIDate,but the arguments don't match.
ListVIEw.builder({
^^^^^^^^^^^^^^^^
Waiting for connection from deBUG service on Chrome... 23.0s
Failed to compile application.
不知道是什么问题
在您的 IndexedWidgetBuilder: (context,index)
方法中将此 itemBuilder: (context,index)
更改为 _buildDynamicList()
。查看此 page 以获取列表视图构建器的示例。
您将属性的类型与其名称混淆了。这就是错误消息试图传达的意思,说没有名为 IndexedWidgetBuilder
的属性。属性名称为 itemBuilder
。
也在 PageViewBuilder 中将其替换为 itemBuilder
。检查 here 的文档。
以上是大佬教程为你收集整理的错误:flutter 中没有名为“IndexedWidgetBuilder”的命名参数全部内容,希望文章能够帮你解决错误:flutter 中没有名为“IndexedWidgetBuilder”的命名参数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。