Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振:如何向图像添加缩放功能_Flutter_Dart - Fatal编程技术网

Flutter 颤振:如何向图像添加缩放功能

Flutter 颤振:如何向图像添加缩放功能,flutter,dart,Flutter,Dart,在我的flatter应用程序中,使用以下代码构建自定义图像 自定义图像.省道 import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/material.dart'; Widget cachedNetworkImage(mediaUrl) { return CachedNetworkImage( imageUrl: mediaUrl, fit: BoxFi

在我的flatter应用程序中,使用以下代码构建自定义图像

自定义图像.省道

import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';

Widget cachedNetworkImage(mediaUrl) {
  return CachedNetworkImage(
    imageUrl: mediaUrl,
    fit: BoxFit.cover,
    placeholder: (context, url)=>
    Padding(padding: EdgeInsets.all(20.0),
    child: CircularProgressIndicator(),
    ),
    errorWidget: (context, url, error) => Icon(Icons.error) ,
  );
}

我想添加一个功能来收缩以缩放此图像,如何实现这一点?

您可以复制粘贴运行下面的完整代码
您可以在
interactiveeviewer

一个小部件,可与子部件进行平移和缩放交互

工作演示

完整代码

import 'package:flutter/material.dart';
import 'package:cached_network_image/cached_network_image.dart';

Widget cachedNetworkImage(mediaUrl) {
  return CachedNetworkImage(
    imageUrl: mediaUrl,
    fit: BoxFit.cover,
    placeholder: (context, url) => Padding(
      padding: EdgeInsets.all(20.0),
      child: CircularProgressIndicator(),
    ),
    errorWidget: (context, url, error) => Icon(Icons.error),
  );
}

void main() => runApp(MyApp());

/// This Widget is the main application widget.
class MyApp extends StatelessWidget {
  static const String _title = 'Flutter Code Sample';

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: _title,
      home: Scaffold(
        appBar: AppBar(title: const Text(_title)),
        body: MyStatelessWidget(),
      ),
    );
  }
}

/// This is the stateless widget that the main application instantiates.
class MyStatelessWidget extends StatelessWidget {
  MyStatelessWidget({Key key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Center(
      child: InteractiveViewer(
        boundaryMargin: EdgeInsets.all(20.0),
        minScale: 0.1,
        maxScale: 1.6,
        child: cachedNetworkImage("https://picsum.photos/250?image=9"),
      ),
    );
  }
}

为此使用
photo\u view
。它允许您创建可缩放的图像小部件,而无需处理捏手势或其他操作

import 'package:photo_view/photo_view.dart';

@override
Widget build(BuildContext context) {
  return Container(
    child: PhotoView(
      imageProvider: AssetImage("assets/image.jpg"),
    )
  );
}

资料来源:

您曾尝试过哪些方法来实现您想要的结果?关于你的问题,你的研究表明了什么?你能提供你尝试的代码吗,这可能有助于改进您的问题。抱歉,我没有尝试任何东西,实际上我正在学习颤振,只是想知道是否有任何方法可以在颤振中缩放照片。我将尝试发布我的尝试和方法。