首页 > 其他分享 >flutter动画— —Hero +photo_view 实现微信朋友圈图片预览

flutter动画— —Hero +photo_view 实现微信朋友圈图片预览

时间:2024-05-17 20:20:21浏览次数:21  
标签:index widget Hero 预览 photo 朋友圈 arguments view

photo_view预览单张图片

依赖
photo_view: ^0.14.0 #微信图片
单张图片的预览
// PhotoView(
//imageProvider:
// NetworkImage(widget.arguments["imageUrl"]),
// )

class HeroPage extends StatefulWidget {
  final Map arguments;
  const HeroPage({super.key, required this.arguments});
  @override
  State<HeroPage> createState() => _HeroPageState();
}

class _HeroPageState extends State<HeroPage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: GestureDetector(
          onTap: () {
            Get.off(
              MyPayTest(),
              transition: Transition.noTransition,
            );
          },
          child: Hero(
              tag: widget.arguments["imageUrl"],
              child: Scaffold(
                  backgroundColor: Colors.black,
                  body: Center(
                    child: AspectRatio(
                        aspectRatio: 9 / 16,
                        child: PhotoView(
                          imageProvider:
                              NetworkImage(widget.arguments["imageUrl"]),
                        )),
                  )))),
    );
  }
}

photo_view多张图片预览

依赖
photo_view: ^0.14.0 #微信图片
多张图片的预览
PhotoViewGallery.builder(
itemCount: 5,
builder: ((context, index) {
return PhotoViewGalleryPageOptions(
imageProvider: NetworkImage(listData[index]["imageUrl"]));
}))

 

PhotoViewGallery.builder(
scrollPhysics: const BouncingScrollPhysics(),
builder: (BuildContext context, int index) {
return PhotoViewGalleryPageOptions(
imageProvider:
NetworkImage(widget.imageItems[index]["imageUrl"]),
);
},
scrollDirection: widget.direction,
itemCount: widget.imageItems.length,
backgroundDecoration:
const BoxDecoration(color: Colors.black),
pageController: PageController(initialPage: 1),
onPageChanged: (index) => setState(() {
currentIndex = index;
}))

PhotoViewGallery.builder属性:

 

标签:index,widget,Hero,预览,photo,朋友圈,arguments,view
From: https://www.cnblogs.com/xbinbin/p/18198500

相关文章

  • flutter动画— —Hero 动画
    Hero动画Hero动画的使用微信朋友圈点击小图片的时候会有一个动画效果到大图预览,这个动画效果就可以使用Hero动画实现。Hero指的是可以在路由(页面)之间“飞行”的widget,简单来说Hero动画就是在路由切换时,有一个共享的widget可以在新旧路由间切换。 页面跳转......
  • Photoshop AI生成式填充工具,PS AI怎么用,怎么注册升级PS AI账号?
    Adobe发布全新生成式人工智慧功能——生成式扩展(GenerativeExpand),推进Photoshop的生成式AI功能发展更上一层楼。老牌的PS也加入到AI浪潮中,推出了一个相当炸裂的AI功能。PSAI能用来做什么这是一款功能强大且使用方便的图像处理软件,它采用了AdobeFirefly提供的AI绘图技术,可以......
  • 超级英雄Hero
    前言:不知道为啥洛谷上好多用妙计之间连边,我用的问题和妙计之间连的,写个题解记录一下题目描述现在电视台有一种节目叫做超级英雄。大概的流程就是每位选手到台上回答主持人的几个问题,然后根据回答问题的多少获得不同数目的奖品或奖金。主持人问题准备了若干道题目,只有当选手正......
  • 女朋友朋友圈发自拍,怎么评论
    你的自拍,如此惊艳——给女友朋友圈的赞美之词亲爱的,当我看到你发的自拍时,我的心被瞬间击中。你的美丽如同晨曦中的第一缕阳光,温暖而明亮,让我为之驻足,为之惊叹。在这张自拍中,你展现出了独特的魅力。你的眼眸深邃而明亮,仿佛藏着星辰与大海,让人忍不住想要深入探索。你的笑容如春花......
  • 女朋友朋友圈晒自拍,怎么评论呢
    为你的美丽驻足——给女友朋友圈自拍的深情评论亲爱的,当我滑动着朋友圈的页面,你的自拍突然跃入眼帘,那一刻,时间仿佛静止了。我被你的美丽深深吸引,不得不为你的魅力驻足。在这张自拍中,你宛如一位降临人间的天使,美得让人窒息。你的眼眸明亮而深邃,仿佛能透视人心,又似藏着无尽的星辰......
  • 女朋友朋友圈发自己照片怎么评论她呢
    为女朋友朋友圈自拍照献上赞美之词当我看到女朋友在朋友圈晒出自己的照片时,心中不禁涌起一股深深的赞叹和爱意。那张照片中的她,美得令人窒息,仿佛整个世界都在她的笑容中绽放。首先,我要说的是,你的笑容真的是太迷人了!那灿烂的笑容如同阳光般温暖,照亮了我心中的每一个角落。每当你......
  • 为女朋友朋友圈自拍点赞,幽默又深情的方法
    为女朋友朋友圈自拍点赞,幽默又深情哈哈,宝贝,你今天的自拍真是惊艳了朋友圈的每一个角落啊!看到你,我突然想到了那句话——"回眸一笑百媚生,六宫粉黛无颜色"。......
  • 女朋友朋友圈发自己照片怎么评论呢视频
    如何以视频形式评论女朋友朋友圈的自拍照当女朋友在朋友圈分享她的自拍照时,用一段精心制作的视频来评论无疑是一个既创新又深情的方式。下面,我将为你提供一个关于如何制作这样一段视频的构想和指南。首先,视频的开头可以是一段温馨的过渡,比如你们曾经一起度过的美好时光的照片或......
  • 回复女朋友朋友圈自拍照的甜蜜评论
    回复女朋友朋友圈自拍照的甜蜜评论亲爱的,看到你发的自拍照,我仿佛被一股甜蜜的风轻轻拂过。在这张照片中,你展现出了无与伦比的魅力,让我为之倾倒。首先,我想说的是,你的笑容真的很有感染力。每次看到你的笑容,我都能感受到一种温暖和幸福。你的眼睛像是藏着星星的夜空,深邃而迷人,让我......
  • 女朋友朋友圈发自己照片怎么评论他的说说
    你的美,惊艳了时光亲爱的,看到你刚刚发的朋友圈照片,我的心仿佛被一股暖流包围。你的美丽,不仅仅浮于表面,更是由内而外散发出来的独特魅力,让我为之倾倒。在这张照片中,你展现出了无与伦比的自信和优雅。每一个细节都经过精心打理,却又不会显得过于刻意。你的笑容如春风拂面,温暖而真挚......