ios动态视频_手机怎么暂停gif

ios动态视频_手机怎么暂停gif其实网上GitHub有很多第三方的,但是用起来比较麻烦,这里介绍最简单的一种方式,自己就可以实现,(点击按钮开始播放动态图)1,集成SDWebImage之后,引入头文件#import"U

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

其实网上GitHub有很多第三方的,但是用起来比较麻烦,这里介绍最简单的一种方式,自己就可以实现,(点击按钮开始播放动态图)

 

1,集成SDWebImage之后,引入头文件#import “UIImage+GIF.h”

2.初始化按钮,(loadingImageView是定义的全局的UIImageView,自己定义下)

   

 self.loadingImageView= [[UIImageView alloc]init];
    UIButton* btn=[[UIButton alloc]initWithFrame:CGRectMake(0, 100, 50, 20)];
    btn.backgroundColor=[UIColor redColor];
    [self.view addSubview:btn];
    ;

  

3.点击按钮就可以实现了,非常简单

- (void)initLoadingImageView
{
    
    NSString  *name = @"图片的名字.gif";
    NSString  *filePath = [[NSBundle bundleWithPath:[[NSBundle mainBundle] bundlePath]] pathForResource:name ofType:nil];
    NSData  *imageData = [NSData dataWithContentsOfFile:filePath];
    
    if (!self.loadingImageView) {
        self.loadingImageView = [[UIImageView alloc]init];
    }
    self.loadingImageView.backgroundColor = [UIColor clearColor];
    
    self.loadingImageView.image = [UIImage sd_animatedGIFWithData:imageData];

//这里可以修改要实现播放的gif的frame
    self.loadingImageView.frame = CGRectMake(0, 100, 200, 100);
    
    [self.view addSubview:self.loadingImageView];
    
    [self.view bringSubviewToFront:self.loadingImageView];
    
}

 

如果想实现gif图片的暂停和继续播放的功能加入以下两个方法就可以了

1.首先再viewDidLoad加入这个(player是CALayer类型的,定义为全局的)

//    设置imageView的layer
    player = self.loadingImageView.layer;

 

2.实现这两个方法,需要用哪个就点击哪个直接把player传过去就可以了

//暂停gif的方法

-(void)pauseLayer:(CALayer*)layer
{
    CFTimeInterval pausedTime = [layer convertTime:CACurrentMediaTime() fromLayer:nil];
    layer.speed = 0.0;
    layer.timeOffset = pausedTime;
}

//继续gif的方法
-(void)resumeLayer:(CALayer*)layer
{
    CFTimeInterval pausedTime = [layer timeOffset];
    layer.speed = 1.0;
    layer.timeOffset = 0.0;
    layer.beginTime = 0.0;
    CFTimeInterval timeSincePause = [layer convertTime:CACurrentMediaTime() fromLayer:nil] -    pausedTime;
    layer.beginTime = timeSincePause;
}

  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166977.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月1日 下午10:36
下一篇 2022年8月1日 下午10:36


相关推荐

  • motan用户开发指南

    motan用户开发指南目录基本介绍架构概述模块概述配置概述使用 Motan 工程依赖处理调用异常配置说明协议与连接 motan protocol 介绍 Motan 协议本地调用注册中心与服务发现 motan registry 介绍使用 Consul 作为注册中心使用 Zookeeper 作为注册中心不使用注册中心服务提供方 motan service 介绍

    2026年3月18日
    2
  • 博途v15定时器设置_博图界面怎么修改定时器时间

    博途v15定时器设置_博图界面怎么修改定时器时间FUNCTION_BLOCKFB8VAR_INPUTTakt:BOOL;//Takt-Signalinput,suchasM0.0toM0.7Start:BOOL;Reset:BOOL;END_VARVARTakt_old:BOOL;BitNr:INT;currTime:…

    2026年4月16日
    3
  • pycharm远程ssh连接服务器,配置interpreter时,出现“Permission denied“字样

    pycharm远程ssh连接服务器,配置interpreter时,出现“Permission denied“字样pycharm 远程 ssh 连接服务器 配置 interpreter 时 出现 Permissionde 字样的解决办法

    2026年3月17日
    2
  • PotPlayer最新 中文,绿色版 PotPlayer

    PotPlayer最新 中文,绿色版 PotPlayer今天推荐一款纯净、无广告、极速、功能强大的播放器:PotplayerPotPlayer到底好在哪里?【知乎】PotPlayer有独特的高级功能!第一,支持单帧播放(F键前进一帧,D键倒退一帧,空格键正常播放)第二,支持变速播放(X键降速10%,C键提速10%,Z键重置)第三,支持5.1声道和7.1声道,可以搭建环绕声家庭影院第四,支持画声同步调节(<键画面提前50ms,>键画面延后50ms,?键重置)第五,按Tab键就能显示视频文件的详细信息第六,支持硬解码,支持软…

    2022年7月14日
    18
  • SQL Server 动态掩码

    SQL Server 动态掩码

    2021年11月27日
    49
  • url 转码 java_URL 转码遇到的坑

    url 转码 java_URL 转码遇到的坑1 背景做图片中心时 需要根据图片 URL 去下载图片 发现部分 URL 浏览器里面能访问 但是代码无法下载原因 需要对 URL 进行转码 2 使用 UrlEncode 一开始直接使用 UrlEncode 对 url 转码 如下原始链接 https s3 amazonaws com fromfactory club image 9f 0f 9fbd598cf637 w

    2026年3月19日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号