Flutter 颤振中的简单滑动小部件';行不通
我将simple_slider的依赖项添加到dependencies(Flutter 颤振中的简单滑动小部件';行不通,flutter,widget,Flutter,Widget,我将simple_slider的依赖项添加到dependencies(simple_slider:“^0.0.1”)下的pubspec.yaml文件中。我安装了它(应用程序运行时没有错误)。但是当我添加下面的代码时出现了一个错误 import 'package:flutter/material.dart'; import 'package:simple_slider/simple_slider.dart'; class HomeScreen extends StatelessWidget {
simple_slider:“^0.0.1”
)下的pubspec.yaml文件中。我安装了它(应用程序运行时没有错误)。但是当我添加下面的代码时出现了一个错误
import 'package:flutter/material.dart';
import 'package:simple_slider/simple_slider.dart';
class HomeScreen extends StatelessWidget {
final _imageUrls = [
"assets/cus.png",
"assets/trans.png",
"assets/cus.png",
"assets/sea.jpg",
];
@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
children: <Widget>[
Container(
child: ImageSliderWidget(
imageUrls: _imageUrls,
imageBorderRadius: BorderRadius.circular(10.0),
imageHeight: 8,
),
),
],
),
);
}
}
导入“包装:颤振/材料.省道”;
导入“package:simple_slider/simple_slider.dart”;
类主屏幕扩展无状态小部件{
最终_imageURL=[
“assets/cus.png”,
“资产/trans.png”,
“assets/cus.png”,
“assets/sea.jpg”,
];
@凌驾
小部件构建(构建上下文){
返回脚手架(
正文:专栏(
儿童:[
容器(
子:ImageSliderWidget(
imageUrls:_imageUrls,
图像边界半径:边界半径。圆形(10.0),
图像高度:8,
),
),
],
),
);
}
}
错误是
Compiler message:
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:460:24: Error: The method 'CachedNetworkImageProvider.load' has fewer positional arguments than those of overridden method 'ImageProvider.load'.
ImageStreamCompleter load(CachedNetworkImageProvider key) {
^
/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_provider.dart:403:24: Context: This is the overridden method ('load').
ImageStreamCompleter load(T key, DecoderCallback decode);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:199:38: Error: The argument type 'void Function(ImageInfo, bool)' can't be assigned to the parameter type 'ImageStreamListener'.
- 'ImageInfo' is from 'package:flutter/src/painting/image_stream.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_stream.dart').
- 'ImageStreamListener' is from 'package:flutter/src/painting/image_stream.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_stream.dart').
oldImageStream?.removeListener(_handleImageChanged);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:200:32: Error: The argument type 'void Function(ImageInfo, bool)' can't be assigned to the parameter type 'ImageStreamListener'.
- 'ImageInfo' is from 'package:flutter/src/painting/image_stream.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_stream.dart').
- 'ImageStreamListener' is from 'package:flutter/src/painting/image_stream.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_stream.dart').
_imageStream.addListener(_handleImageChanged);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:210:34: Error: The argument type 'void Function(ImageInfo, bool)' can't be assigned to the parameter type 'ImageStreamListener'.
- 'ImageInfo' is from 'package:flutter/src/painting/image_stream.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_stream.dart').
- 'ImageStreamListener' is from 'package:flutter/src/painting/image_stream.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/painting/image_stream.dart').
_imageStream?.removeListener(_handleImageChanged);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:464:31: Error: The argument type 'Null Function(StringBuffer)' can't be assigned to the parameter type 'Iterable<DiagnosticsNode> Function()'.
- 'StringBuffer' is from 'dart:core'.
- 'Iterable' is from 'dart:core'.
- 'DiagnosticsNode' is from 'package:flutter/src/foundation/diagnostics.dart' ('/D:/flutter/SDK/flutter/packages/flutter/lib/src/foundation/diagnostics.dart').
informationCollector: (StringBuffer information) {
^
编译器消息:
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/Pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:460:24:错误:“CachedNetworkImageProvider.load”方法的位置参数比被重写的“ImageProvider.load”方法的位置参数少。
ImageStreamCompleter加载(CachedNetworkImageProvider密钥){
^
/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image\u provider.dart:403:24:Context:这是重写的方法('load')。
ImageStreamCompleter加载(T键,解码器回调解码);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/Pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:199:38:错误:无法将参数类型“void Function(ImageInfo,bool)”分配给参数类型“ImageStreamListener”。
-“ImageInfo”来自“package:flatter/src/painting/image_stream.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image_stream.dart”)。
-“ImageStreamListener”来自“package:flatter/src/painting/image_stream.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image_stream.dart”)。
oldImageStream?.RemovelListener(_handleImageChanged);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/Pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:200:32:错误:无法将参数类型“void Function(ImageInfo,bool)”分配给参数类型“ImageStreamListener”。
-“ImageInfo”来自“package:flatter/src/painting/image_stream.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image_stream.dart”)。
-“ImageStreamListener”来自“package:flatter/src/painting/image_stream.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image_stream.dart”)。
_addListener(_handleImageChanged);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/Pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:210:34:错误:无法将参数类型“void Function(ImageInfo,bool)”分配给参数类型“ImageStreamListener”。
-“ImageInfo”来自“package:flatter/src/painting/image_stream.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image_stream.dart”)。
-“ImageStreamListener”来自“package:flatter/src/painting/image_stream.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/painting/image_stream.dart”)。
_imageStream?.removeListener(_handleImageChanged);
^
/C:/Users/B.R.P.Perera/AppData/Roaming/Pub/Cache/hosted/Pub.dartlang.org/cached_network_image-0.4.2/lib/cached_network_image.dart:464:31:错误:无法将参数类型“Null Function(StringBuffer)”分配给参数类型“Iterable Function()”。
-“StringBuffer”来自“dart:core”。
-“Iterable”来自“dart:core”。
-“DiagnosticsNode”来自“package:flatter/src/foundation/diagnostics.dart”(“/D:/flatter/SDK/flatter/packages/flatter/lib/src/foundation/diagnostics.dart”)。
informationCollector:(字符串缓冲区信息){
^
我犯的错误在哪里?
谢谢。使用此附件
photo_view: ^0.10.2
试试这段代码,我测试过了,效果很好
import 'package:flutter/material.dart';
import 'package:photo_view/photo_view.dart';
import 'package:photo_view/photo_view_gallery.dart';
class PhotoViewScreen extends StatelessWidget {
final List<String> imageList = [
'https://images.unsplash.com/photo-1533450718592-29d45635f0a9',
'https://images.unsplash.com/photo-1601902572612-3c850fab3ad8',
];
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Image Preview')),
body: Stack(
children: [
Container(
child: PhotoViewGallery.builder(
scrollPhysics: const BouncingScrollPhysics(),
builder: (BuildContext context, int index) {
return PhotoViewGalleryPageOptions(
imageProvider: NetworkImage(imageList[index]),
initialScale: PhotoViewComputedScale.contained * 1,
minScale: .01,
maxScale: 1.0
//heroAttributes: HeroAttributes(tag: galleryItems[index].id),
);
},
itemCount: imageList.length, //galleryItems.length,
loadingBuilder: (context, event) => Center(
child: Container(
width: 50.0,
height: 50.0,
child: CircularProgressIndicator(
value: event == null
? 0
: event.cumulativeBytesLoaded /
event.expectedTotalBytes,
),
),
),
backgroundDecoration: BoxDecoration(color: Colors.white),
),
),
],
),
);
}
}
导入“包装:颤振/材料.省道”;
导入“package:photo_view/photo_view.dart”;
导入“package:photo_view/photo_view_gallery.dart”;
类PhotoViewScreen扩展了无状态小部件{
最终列表imageList=[
'https://images.unsplash.com/photo-1533450718592-29d45635f0a9',
'https://images.unsplash.com/photo-1601902572612-3c850fab3ad8',
];
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(标题:文本(“图像预览”),
主体:堆栈(
儿童:[
容器(
子项:PhotoViewGallery.builder(
scrollPhysics:const BouncingScrollPhysics(),
生成器:(BuildContext上下文,int索引){
返回PhotoViewGalleryPageOptions(
imageProvider:NetworkImage(imageList[索引]),
initialScale:PhotoViewComputedScale.contained*1,
最小刻度:.01,
最大刻度:1.0
//heroAttributes:heroAttributes(标记:galleryItems[index].id),
);
},
itemCount:imageList.length,//galleryItems.length,
loadingBuilder:(上下文,事件)=>Center(
子:容器(
宽度:50.0,
身高:50.0,
子对象:循环压缩机指示器(
值:事件==null
? 0
:event.cumulativeBytes加载/
event.expectedTotalBytes,
),
),
),
背景装饰:盒子装饰(颜色:Colors.white),
),
),
],
),
);
}
}
它是不是