touchClearDemo:触摸清晰,

时间:2024-05-20 01:18:46
【文件属性】:

文件名称:touchClearDemo:触摸清晰,

文件大小:664KB

文件格式:ZIP

更新时间:2024-05-20 01:18:46

Objective-C

由于项目的一个需求,研究了下CALayer ,发现了一个比较有趣的属性contents先展示下完成的需求效果。 可以看到,就是一个对一个图片模糊处理后,点击的时候,点击区域变为清晰,而未触摸区域依然保持模糊状态。如果单纯的处理一张图片模糊我们知道有很多种方法可以实现,这里的主要难点是,在手指触摸的区域需要还原图片的清晰,并且如果在手指长按滑动的情况下,需要根据手指移动的轨迹来还原图片的清晰。 刚接手这个需求的时候,首先想到的是,根据手指移动的轨迹 重新绘制点击的区域来完成,但是实验以后发现并不太容易实现理想效果,而且性能很差。 使用 CGContextRef 处理问题 1,首先性能很差,在手指长按滑动时,如果时时的根据移动位置做重绘操作,必定造成内存的激增。这个避免不了。 2, 不能很好的处理触摸区域周边的糊化效果, 3,当做图片放大时,对触摸清晰的区域不好把控。 基于上述这些问题,后面


【文件预览】:
touchClearDemo-master
----touchClearDemoTests()
--------Info.plist(680B)
--------touchClearDemoTests.m(928B)
----SDWebImage()
--------SDImageCache.h(8KB)
--------UIButton+WebCache.m(12KB)
--------UIImageView+HighlightedWebCache.h(5KB)
--------SDWebImageManager.h(11KB)
--------UIImage+GIF.h(382B)
--------SDWebImageDownloaderOperation.h(2KB)
--------SDWebImageDownloaderOperation.m(17KB)
--------NSData+ImageContentType.m(1KB)
--------UIImageView+WebCache.h(10KB)
--------SDImageCache.m(19KB)
--------SDWebImageDecoder.m(3KB)
--------SDWebImageOperation.h(329B)
--------SDWebImagePrefetcher.h(4KB)
--------UIView+WebCacheOperation.m(2KB)
--------UIImageView+WebCache.m(8KB)
--------SDWebImageDownloader.m(11KB)
--------UIImage+MultiFormat.h(263B)
--------SDWebImageDownloader.h(7KB)
--------SDWebImageManager.m(14KB)
--------SDWebImageCompat.h(2KB)
--------UIView+WebCacheOperation.h(970B)
--------UIImageView+HighlightedWebCache.m(5KB)
--------UIButton+WebCache.h(13KB)
--------UIImage+MultiFormat.m(3KB)
--------SDWebImageCompat.m(1KB)
--------NSData+ImageContentType.h(565B)
--------SDWebImagePrefetcher.m(5KB)
--------SDWebImageDecoder.h(453B)
--------UIImage+GIF.m(5KB)
----HTtouchClear()
--------UIView+HTFrame.m(1KB)
--------UIImage+Color.h(367B)
--------patternFinnal.png(73KB)
--------HTTouchClearView.h(889B)
--------UIView+HTFrame.h(508B)
--------UIImage+Color.m(3KB)
--------HTTouchClearView.m(9KB)
----README.md(4KB)
----touchClearDemo.xcodeproj()
--------project.xcworkspace()
--------xcuserdata()
--------project.pbxproj(35KB)
----touchClearDemoUITests()
--------Info.plist(680B)
--------touchClearDemoUITests.m(1KB)
----touchClearDemo()
--------ViewController.m(5KB)
--------pictureViewCell.m(1KB)
--------Info.plist(2KB)
--------pictureViewCell.h(327B)
--------main.m(342B)
--------Base.lproj()
--------ViewController.h(225B)
--------AppDelegate.h(285B)
--------Assets.xcassets()
--------AppDelegate.m(2KB)

网友评论