iOS 分别对一张图的局部进行磨砂,拼接起来不能贴合

效果图

需求,由于视图层级的原因,需要对图片分开进行磨砂, 然后组合在一起

如图,上下两部分,上下两个UIImageVIew大小相同,都是和图片同样的大小,只是上面的UIimageVIew 只展示上半部份 (上面图片的父视图cliptobound=YES,超出部分被切掉),下面的UIImageView只展示下半部分,如果没有磨砂的情况下,两张图是完全贴合的,下面分别对两

磨砂代码如下

复制代码
- (UIVisualEffectView *)bgEffectView{
    if(!_bgEffectView){
        UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
        _bgEffectView = [[UIVisualEffectView alloc] initWithEffect:blur];
        _bgEffectView.frame = CGRectMake(0, 0, SCREEN_WIDTH, SafeAreaTopHeight + 44 * PLUS_SCALE + 210 * PLUS_SCALE);
//        _bgEffectView.hidden = YES;
    }
    return _bgEffectView;
}

但是进行磨砂的时候发现一个问题,如图

就是上半部份和下半部份没有完全贴合,而是上半部分有明显的边界

经过多次尝试,还是不能完全贴合,后来发发现,磨砂都是对目前没有可以展示的内容进行磨砂的,比如上半部份,虽然图片是和下面的图片大小一样,但是其超处父视图的部分没有展示(clipsToBounds = YES),导致上半部分只对上面展示的那一部分进行磨砂,而磨砂会在边界留下分割线效果,就导致和下半部份不能贴合,

由此可见
图片不能分开磨砂,分开磨砂是不能贴合的

相关推荐
游戏开发爱好者87 小时前
WebSocket 抓包怎么查看内容?从握手到消息帧完整解读
网络协议·计算机网络·网络安全·ios·adb·https·udp
悟空瞎说10 小时前
# Alamofire 使用文档 完整翻译
ios
WeiAreYoung16 小时前
Flutter+iOS 实现 Live Activity
flutter·ios
2501_9160088918 小时前
Swift多环境配置:利用Scheme实现灵活的多环境管理
开发语言·ide·vscode·ios·个人开发·swift·敏捷流程
00后程序员张19 小时前
Windows / Linux / Mac 上不用 Xcode 把 IPA 上传到 App Store,upload 命令详解
android·ios·小程序·https·uni-app·iphone·webview
秦少游在淮海19 小时前
id - Android、iOS
android·ios
太子釢1 天前
用 AI 完整实现 Github 客户端:基于 KMP + SwiftUI + Compose
android·人工智能·ios
软泡芙2 天前
【iOS】 Alamofire + Moya + SwiftData 完整教程
ios
我是谁的程序员2 天前
Windows / Linux / Mac 上不用 Xcode 把 IPA 上传到 App Store,upload 命令详解
后端·ios
iFlyCai2 天前
iOS中的单例模式详解
ios·单例模式·objective-c·多线程·swift